• Watir: Watir-WebDriver对富文本编辑器的定位于Watir是不一致的。


    Watir对富文本编辑,一般可以采用b.frame().document.body.innerText = "Value you want to insert"
    但是Watir-WebDriver不支持这种方法。
    不过有两种方法可以通过Watir-WebDriver向所见即所得编辑器(应该指的是富文本编辑器)中输入文字:
    定位编辑器所在的iFrame,然后使用.send_keys方法(缺点是浏览器必须在前台运行)
    在浏览器上执行javascript,通过js脚本去设置编辑器的值。

    #CKEditor
    require 'watir-webdriver'
    b = Watir::Browser.new :firefox
    b.goto 'http://ckeditor.com/demo'
    b.execute_script("CKEDITOR.instances['editor1'].setData('hello world');")
    b.frame(:title => 'Rich text editor, editor1, press ALT 0 for help.').send_keys 'hello world again'
    #TinyMCE Editor require
    'watir-webdriver' b = Watir::Browser.new b.goto 'http://tinymce.moxiecode.com/tryit/full.php' b.execute_script("tinyMCE.get('content').execCommand('mceSetContent',false, 'hello world' );") b.frame(:id => "content_ifr").send_keys 'hello world again'
  • 相关阅读:
    [C#1] 2类型基础
    [C#2] 5迭代器
    [C#1] 6方法
    [C#1] 8数组
    [C#1] 12特性
    [C#1] 10事件
    [C#2] 2匿名方法
    实用代码JavaScript实用小函数一枚(深入对象取值)
    [C#1] 11接口
    实用代码C#获取本机网络适配器信息及MAC地址
  • 原文地址:https://www.cnblogs.com/autotest/p/3262508.html
Copyright © 2020-2023  润新知