自动化测试问题总结

1.第三方组件的定位与值的读取,

codemirror

在hae中,前台框架的代码编辑器采用的是codemirror,在进行元素定位时,普通方式无法定位,因为它是采用的格式化后的值,

解决方式为:通过JS得到codemiior实例化时的实例对象,通过实例对象进行值得读写,hae中目前遇到的有定义到pageData()、page两种对象中的。所以必须查看源代码看实例是在那个对象中进行初始化的,

pageData()方式的js代码为:$(".codemirror").pageData().editor.setValue();

page方式的js代码为:hae.context(pageId).page.editor.setValue();//采用这种方式是因为hae前端框架是通过这种方式获取page对象,不同的框架采用的模式可能不一样,关键是要找到实例

 如TinyMCE编辑器(本博客默认编辑器):

<body id="tinymce" class="mceContentBody " οnlοad="window.parent.tinyMCE.get('Editor_Edit_EditorBody').onLoad.dispatch();" contenteditable="true" spellcheck="false" dir="ltr">

html代码:控制台查看本博客源代码

解决方式:1.获取实例:var editor = window.parent.tinyMCE.get('Editor_Edit_EditorBody');//若没有id,参考此处试试:http://www.cnblogs.com/Mr-S/p/4906045.html

     2.设置值;①使用webdriver默认的sendKeys,getEleMent(By.cssSelector("#tinymce")).sendKeys("aa\nbb");//可输入\n转义标签,输入html无效,如:“test<p>bb<//p>xx”,它会原样输入

          ②利用js采用实例设置,editor.setContext("aa<p><//p>bb");//不可输入转义标签如“aa\ndd”,会报正在表达式错误,可输入html标签

     3.获取值:editor.getContxt({'format':'text|html'});//text获取的为纯文本,html获取的为html元素

 

 

 

2.页面渲染出具体指,但是在dom节点中没有此值,只有此值得数据模型对应的键值,如input输入框中的属性dataField=“User.name”

解决方式:通过代码可查看到此dom元素的赋值是通过 val()  函数完成,故可通过js方式去读取值:$("input[name='name']").val();

 

3.提示框几秒就消失的问题(有的提示框几秒会自动关闭,而且dom节点也不存在了,对此类元素的定位较为麻烦)

解决方式:最好是查看源代码,在本地环境找到对应的代码块,修改此提示框的消失为false,完成定位后再修改回来即可。

 

4.蒙版挡住的元素与未挡住的元素是否可以分辨出来?待研究,如果可以,那么在实际工作中,可通过text定位来重用很多公共的元素对象,如:保存、取消等按钮

针对每个系统的特点,应该可以找出被蒙版遮住与未遮住的属性的区别,最近研究了下自己项目组的web系统,采用的是div+css的解决方式,即几乎所有的弹出框,按钮等都是通过div+css实现,经过比较发现,当元素处于蒙版外,即可操作的元素,这些元素的属性会动态变化,增加了 tabindex属性,这些元素的这些属性的 tabindex都等于 -1.因此,可以通过这个属性来过滤掉蒙版下的元素,找出当前可操作的元素。这样,就可以总结出一些此种情景下的可重用的一些元素组件。

转载于:https://www.cnblogs.com/Mr-S/p/4905928.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值