Selenium操作联动菜单
来源:互联网 发布:兼职美工一张图多少钱 编辑:程序博客网 时间:2024/05/16 05:27
最近在用Selenium实现自动化测试的过程中遇到了一些问题,不太好解决,或者解决了也觉得不是特别好的办法,在这里写出来一个是记录一下,也向大家需求一下帮助,看看有没有更好的办法,谢谢!
一个问题就是二级联动菜单,比如选择省市的二级联动菜单,在第一个菜单中选择省份后会触发二级菜单的load事件去装载市区的option label。可如果单独用selenium.select(locator,label='xxx');的操作是无法触发二级菜单的load事件的,从而执行时无法找到相应的label。大家的建议都是用fireEvent、mouseUp、mouseDown之类的API进行调试,可这些方法仍没有解决我的问题。后来是通过先focus,再click,最后select的步骤进行操作才能触发事件并选到相应的label。实例如下:
selenium.focus(provinceCode);
selenium.click(provinceCode);
selenium.select(provinceCode,label='Beijing');
selenium.focus(cityCode);
selenium.click(cityCode);
selenium.select(cityCode,label='Beijing');
可感觉这种方式毕竟繁琐,不知道有没有更好的方法可以直接触发事件,直接通过select进行操作。其间我还看到了这篇文章http://blog.csdn.net/honglei915/archive/2009/11/16/4815513.aspx,可是没有成功,不知道是不是我用的框架没有继承SeleniumTestCase。因为我们的框架是结合TestNG,通过@Factory和@Test标注进行测试Case文件解析,文件以htm形式存在,将tr/td标签解析为selenium可执行的命令执行自动化操作。如果大家有什么好的办法请留言告诉我吧,谢谢!
其次就是对页面上js事件的处理,现在我能想到的就是用fireEvent()这个API。一个参数是要触发这个js的控件的xpath,另一个参数就是要触发的事件,大家给的建议一般都是blur或focus,可尝试了很多次都没有成功。不知大家有没有更好的方法?或者了解这个API的大虾能不能给具体讲讲,为啥用blur/focus,这俩有什么区别?还有没有什么其他event可以用呢?谢谢!
- Selenium操作联动菜单
- Android 多级菜单联动操作
- Excel操作笔记--联动下拉菜单
- 联动菜单
- 联动菜单
- 联动菜单
- 联动菜单
- 菜单联动
- 联动菜单
- 联动菜单
- 联动菜单
- 联动菜单
- Android——Android实现多级菜单联动操作
- Android——Android实现多级菜单联动操作
- javascript对DOM操作实例之联动菜单
- 两级联动菜单 与 多级联动菜单
- 二级联动菜单 三级联动菜单
- 三级联动菜单
- 用脚本执行RMAN操作
- Web开发者必知的12款jQuery插件
- 【ERROR_2】Call to a member function bind_param() on a non-object
- samba共享的简要操作说明
- MySQL的监控和调优
- Selenium操作联动菜单
- BigTable Model with Cassandra and HBase
- Installshield 在安装过程中发生 错误代码:-5009等解决方法
- 任务挂起和中断
- 形态学图像处理-腐蚀和膨胀
- 虚拟列表控件 CListCtrl
- Windows与Ubuntu双系统,重装Windows后,恢复Ubuntu的启动项
- C++及其它计算机书籍推荐
- 《鸟哥Linux私房菜》学习笔记_chap9_档案属性 目录配置