Selenium测试ExtJs
2015-10-28 13:45
477 查看
待测的ExtJs页面其实只能在IE8上正常跑(由于需要用到ocx),但是刚好待测的功能可以不用ocx进行,所以在firefox也能正常跑。
由于本人是新手,为了避免从头写脚本,决定先用firefox录制测试用例,再导出为java或其他语言的web driver。
Firefox需要安装插件如下:
Selenium IDE 2.9.1,
FireBug,
FirePath
在Selenium IDE录了以后,回放时,发现以id找不到ExtJs下拉菜单的顶层按钮元素以及菜单内的菜单项元素,因为id是动态生成的,每次都在变。
找了一堆资料后,发现别人也遇到了同样的问题,试了几种解决方法都不行,最后找到了一个靠谱的解决方法:
http://youku.io/questions/12839/any-suggestions-for-testing-extjs-code-in-a-browser-preferably-with-selenium
该文推荐:放弃id或者xpath定位,而改为以css定位,这比较靠谱而且速度快
对于button,是很简单的,只要在Target栏内写入:
css=button:contains('按钮上的文字')
对于菜单项,稍微复杂一些,我要找的元素通过“Inspect in FirePath”看,是一个span,因此只要在Target栏内写入:
css=.x-menu-item-text:contains('菜单项上的文字')
需要注意的是,在click前,需要先等待元素出现waitForElementPresent
由于本人是新手,为了避免从头写脚本,决定先用firefox录制测试用例,再导出为java或其他语言的web driver。
Firefox需要安装插件如下:
Selenium IDE 2.9.1,
FireBug,
FirePath
在Selenium IDE录了以后,回放时,发现以id找不到ExtJs下拉菜单的顶层按钮元素以及菜单内的菜单项元素,因为id是动态生成的,每次都在变。
找了一堆资料后,发现别人也遇到了同样的问题,试了几种解决方法都不行,最后找到了一个靠谱的解决方法:
http://youku.io/questions/12839/any-suggestions-for-testing-extjs-code-in-a-browser-preferably-with-selenium
该文推荐:放弃id或者xpath定位,而改为以css定位,这比较靠谱而且速度快
对于button,是很简单的,只要在Target栏内写入:
css=button:contains('按钮上的文字')
对于菜单项,稍微复杂一些,我要找的元素通过“Inspect in FirePath”看,是一个span,因此只要在Target栏内写入:
css=.x-menu-item-text:contains('菜单项上的文字')
需要注意的是,在click前,需要先等待元素出现waitForElementPresent
相关文章推荐
- jsp页面上的一些js校验方法
- Jstl标签<c:if>的用法
- javascript笔记之---Date类型
- js 去掉字符串前后空格
- 转载:200多个js技巧代码
- EXTJS Panel 中radio选中值的获取方法
- JS_控制输入,只能键入数字
- 使用CoffeeScrip优美方式编写javascript代码
- js操作cookies
- Javascript模块化编程
- 如何在jsp中嵌入Java代码取出存放在Attribute中的对象
- js面向对象编程-高级内容
- 【 javascript 】.innerHTML属性定义
- js原生继承之——组合式继承实例
- 【 javascript 】.match()方法定义
- jsp页面调用ocx控件
- Json转换利器Gson之实例一-简单对象转化和带泛型的List转化
- JSPatch学习笔记
- JSP 页面缓存以及清除缓存
- 开启Javascript中apply、call、bind的用法之旅模式