- 浏览: 425413 次
- 性别:
- 来自: 昆明
文章分类
最新评论
Web应用自动化验收工具——Selenium系列预研
最近领导要我和小何一起研究一下自动化测试,并找一下开源的WEB界面自动化测试工具,我锁定了Selenium,小何锁定了Watij,下面是我对Selenium的一些研究以及与Watij的对比。这里感谢一下hyddd写的《Selenium私房菜系列》,是我的入门文章,下面某些内容也是参考了此文。欢迎指正...
1.Selenium工具简介
Selenium是ThoughtWorks公司开发的一套基于WEB应用的验收测试工具,直接运行在浏览器中,模拟客户操作。它抽象出一系列命令来模块用户操作,比如open命令表示打开一个URL,click命令表示点击某个按钮。Selenium实际上将这些命令转化成实际的HTTP请求在浏览器中运行。本系列现在主要包括以下4款:
1. Selenium Core,它的优点是编写测试案例简单,并且支持绝大多数的浏览器,但缺点也同样明显,Selenium Core需要远程安装,Selenese 语言也限制了复杂案例的可能性,并且没有良好的外部扩展,这是些都会是致命的问题。
2. Selenium Grid:允许同时并行地、在不同的环境上运行多个测试任务,极大地加快Web 应用的功能测试。
3. Selenium IDE :支持并且只支持Firefox浏览器,属于Firefox的一个插件,支持的浏览器太少,而依附于Firefox 也不便于日后开展自动化测试,但是,它的录制快捷好用!并且有代码转换功能,可以把Selenium 语言测试用例转为C#,Java,PHP,Ruby,Prel,Groovy,Python等语言的测试案例,我建议使用Selenium IDE + FireBug 进行测试案例的编写,然后转为其他语言的测试用例后,再调用Selenium RC运行测试用例。
4. Selenium RC(Remote Control) 是本人推荐使用的工具,它支持很多浏览器,可以使用C#,Java 等语言编写测试案例,易于维护,同时提供了很好的扩展性,所以接下来将针对Selenium RC 作为默认的测试工具进行介绍。
所以这里建议采用Selenium IDE + Selenium RC + Firebug组合搭建Web应用自动化验收测试。
2.Selenium-IDE安装和使用
安装
1. Selenium官网(http://seleniumhq.org/)下载Selenium-IDE作为Firefox的插件进行安装
使用
1.Firefox工具栏,打开Selenium-IDE插件,如下图:
2.选择插件界面中右上角红色录制按钮(开始录制、停止录制都是此按钮),如下图,这里录制登陆集中管理工具的过程。
3.录制完成后,点击回放按钮可以对刚刚录制的脚本进行回放,这里可以调整回放速度。
4.可以将录制的脚本转换成C#,Java,PHP,Ruby,Prel,Groovy,Python等语言,这里选择Java,如下图:
转换后代码如下:
5.上面转换的代码可以稍加修改便可配合RC使用,修改后代码如下:
3.Selenium-RC安装使用
简介
Selenium RC(Remote Control)是一个基于java编写的开源测试工具,允许使用多种语言编写自动化的WEB UI测试用例。这个工具提供一个Selenium Server可以启动,停止和控制绝大多数主流浏览器,这个服务器使用AJAX直接和浏览器进行交互,可以使用HTTP GET/POST请求向Selenium Server发送命令。
Selenium-RC安装包包含两部分:Selenium-server、Selenium-client-driver(各语言版本分别对应一个 client-driver.jar),server为测试服务器,client-driver为测试用例的API(编写测试用例的使用用到)。
安装:
1. 安装1.5及以上版本的JDK
2. 官网下载最新版Selenium-RC组件至本地,直接解压便可使用
启动Server:
启动命令java -jar Selenium-server.jar 可以带参数启动,如java -jar selenium-server.jar -interactive为以交互模式启动,这里自己可以将启动操作制作成简单的.bat或.sh脚本,如bat脚本(此脚本与selenium- server.jar在同一级目录下):
开发运行测试用例:
这里采用java语言为例来进行说明:
1. 解压Selenium-RC压缩包,取出selenium-java-client-driver.jar
2. 打开Java IDE(Eclipse, NetBeans, IntelliJ, Netweaver, etc.)
3. 新建一个project
4. 将selenium-java-client-driver.jar导入此project的classpath
5. 将Selenium-IDE录制好的html脚本转换成java文件,导入新建的project(可能需要稍作修改,如添加assert判断用例是否测试通过),或直接使用selenium-java-client API编写测试用例。本工具同时支持Junit和TestNg测试框架。
6. 启动Selenium Server
7. 在Java IDE 或命令行执行编写好的测试用例
4.Selenium-RC工作原理
(1).测试案例(Testcase)通过Client Lib的接口向Selenium Server发送Http请求,要求和Selenium Server建立连接。
(2).Selenium Server的Launcher启动浏览器,把Selenium Core加载入浏览器页面当中,并把浏览器的代理设置为Selenium Server的Http Proxy。
(3).测试案例通过Client Lib的接口向Selenium Server发送Http请求,Selenium Server对请求进行解析,然后通过Http Proxy发送JS命令通知Selenium Core执行操作浏览器的动作。
(4).Selenium Core接收到指令后,执行操作。
(5).浏览器收到新的页面请求信息(因为在(4)中,Selenium Core的操作可能引发新的页面请求),于是发送Http请求,请求新的Web页面。
由于Selenium Server在启动浏览器时做了手脚,所以Selenium Server会接收到所有由它启动的浏览器发送的请求。
(6).Selenium Server接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。
(7).Selenium Server的Http Proxy把接收的Web页面返回给浏览器。
5.Selenium-RC优缺点
与Watij对比的优势:
编号 Selenium Watij
1 跨浏览器 仅IE
2 跨操作系统 仅Windows
3 支持多数主流编程语言C#,Java,PHP,Ruby,Prel,Groovy,Python等 仅java
4 提供Hudson插件,容易与Hudson整合 未提供Hudson插件
5 可以录制和回放脚本,并可以将录制好的脚本转换成各种主流编程语言 未提供此功能
6 API强大,文档全 ?
7 属于同类产品中主流,官方资料详细、拥有正规的中文论坛 较主流,资料不是特别多
8 发展迅速 发展缓慢,出现替代产品
缺点:
1. 对弹出窗口、上传、下载功能测试不太方便,需要借助第三方工具包AutoIt3(但是在使用过程中没有遇见什么问题,可能这个问题是以前版本的问题,而且watij这方面也存在点问题)
6.Selenium-RC与Hudson整合
Selenium提供了Hudson持续集成插件,可以与Hudson进行整合(这里如果确定采用此工具再具体研究怎么整合)。
7.Selenium-RC常用API
一. 文本框Text box
1. 向文本框中填写信息
2. 取出某个文本框中已经填写的信息
3. 判断某文本框是否可编辑
二.下拉框 Drop down list
1. 向下拉框中选值
2. 取出某个下拉框中已经选择的值
3. 取出某个下拉框中所有的选项
三.按钮或链接Button & Link
单击
四. 单选框或多选框 Radio Box & Check Box
1. 选择
1. 不选
2. 判断是否选择
五.表格Table
1. 取出表中某个单元格的值,下标从 0 开始
六.其他 others
1. 取某个元素的特定属性值
2.取某元素的 text 值
3. 取当前页面的 Title
4. 判断页面是否有特定的元素
5. 判断页面是否有特定文字
6. 判断某个元素是否 invisible,图片是空的 the "display" property to "none"或 CSS "visibility" property to "hidden"
7. 模拟 Keyup 事件
8. 打开一个 url,相对或绝对
9. 刷新页面
10. 控制每步操作间隔的时间,milliseconds
11. 开始一个 Selenium session
12. 结束测试
13. 等待新页面加载
14. 页面最大化
8.完整的一个例子
下面是一个完整的创建JDBC连接池和删除JDBC连接池的测试用例:
9.Selenium常见问题
1.需要把浏览器的启动程序添加至PATH环境变量中,否则会抛出异常。提示不能打开浏览器;
2.如果将浏览器的启动程序添加至PATH环境变量中,还是不能打开浏览器,可能是Selenium版本不支持此浏览器版本,支持信息可以通过查看 Selenium-RC的selenium-server.jar中install.rdf 文件看此Selenium都支持那些版本浏览器;
3. 抛Element not found异常时, 一般有两个原因:一个是页面还没加载完,需要添加一条Thread.sleep()语句;一个可能是查找方式有误,比如xpath或id不正确,或查找顺序不正确;
4.selectFrames进入某个frame后,重新选择其它frame时,有时需要退出本frame,如selenium.selectFrame("relative=up");
5.使用Selenium IDE进行脚本录制时,在TWNS管理控制台对功能树的操作不能录制下来,需要手动添加这部分的脚本 ;
1.Selenium工具简介
Selenium是ThoughtWorks公司开发的一套基于WEB应用的验收测试工具,直接运行在浏览器中,模拟客户操作。它抽象出一系列命令来模块用户操作,比如open命令表示打开一个URL,click命令表示点击某个按钮。Selenium实际上将这些命令转化成实际的HTTP请求在浏览器中运行。本系列现在主要包括以下4款:
1. Selenium Core,它的优点是编写测试案例简单,并且支持绝大多数的浏览器,但缺点也同样明显,Selenium Core需要远程安装,Selenese 语言也限制了复杂案例的可能性,并且没有良好的外部扩展,这是些都会是致命的问题。
2. Selenium Grid:允许同时并行地、在不同的环境上运行多个测试任务,极大地加快Web 应用的功能测试。
3. Selenium IDE :支持并且只支持Firefox浏览器,属于Firefox的一个插件,支持的浏览器太少,而依附于Firefox 也不便于日后开展自动化测试,但是,它的录制快捷好用!并且有代码转换功能,可以把Selenium 语言测试用例转为C#,Java,PHP,Ruby,Prel,Groovy,Python等语言的测试案例,我建议使用Selenium IDE + FireBug 进行测试案例的编写,然后转为其他语言的测试用例后,再调用Selenium RC运行测试用例。
4. Selenium RC(Remote Control) 是本人推荐使用的工具,它支持很多浏览器,可以使用C#,Java 等语言编写测试案例,易于维护,同时提供了很好的扩展性,所以接下来将针对Selenium RC 作为默认的测试工具进行介绍。
所以这里建议采用Selenium IDE + Selenium RC + Firebug组合搭建Web应用自动化验收测试。
2.Selenium-IDE安装和使用
安装
1. Selenium官网(http://seleniumhq.org/)下载Selenium-IDE作为Firefox的插件进行安装
使用
1.Firefox工具栏,打开Selenium-IDE插件,如下图:
2.选择插件界面中右上角红色录制按钮(开始录制、停止录制都是此按钮),如下图,这里录制登陆集中管理工具的过程。
3.录制完成后,点击回放按钮可以对刚刚录制的脚本进行回放,这里可以调整回放速度。
4.可以将录制的脚本转换成C#,Java,PHP,Ruby,Prel,Groovy,Python等语言,这里选择Java,如下图:
转换后代码如下:
- packagecom.example.tests;
- importcom.thoughtworks.selenium.*;
- importjava.util.regex.Pattern;
- publicclassMasterLoginextendsSeleneseTestCase{
- publicvoidsetUp()throwsException{
- setUp("http://change-this-to-the-site-you-are-testing/","*chrome");
- }
- publicvoidtestUntitled2()throwsException{
- selenium.open("/gm/login.jsf");
- selenium.type("j_username","tongweb");
- selenium.type("j_password","tongweb");
- selenium.click("j_security_check");
- selenium.waitForPageToLoad("30000");
- }
- }
5.上面转换的代码可以稍加修改便可配合RC使用,修改后代码如下:
- packagecom.example.tests;
- importcom.thoughtworks.selenium.*;
- importjava.util.regex.Pattern;
- publicclassMasterLoginextendsSeleneseTestCase{
- publicvoidsetUp()throwsException{
- setUp("http://localhost:9060/","*firefox");//Modifythisline
- }
- publicvoidtestMasterLogin()throwsException{
- selenium.open("/gm/login.jsf");
- selenium.type("j_username","tongweb");
- selenium.type("j_password","tongweb");
- selenium.click("j_security_check");
- selenium.waitForPageToLoad("30000");
- assertEquals("TongWeb管理控制台",selenium.getTitle());//Judgingthetestcaseispassorfailedbyaddaassert.
- }
- }
3.Selenium-RC安装使用
简介
Selenium RC(Remote Control)是一个基于java编写的开源测试工具,允许使用多种语言编写自动化的WEB UI测试用例。这个工具提供一个Selenium Server可以启动,停止和控制绝大多数主流浏览器,这个服务器使用AJAX直接和浏览器进行交互,可以使用HTTP GET/POST请求向Selenium Server发送命令。
Selenium-RC安装包包含两部分:Selenium-server、Selenium-client-driver(各语言版本分别对应一个 client-driver.jar),server为测试服务器,client-driver为测试用例的API(编写测试用例的使用用到)。
安装:
1. 安装1.5及以上版本的JDK
2. 官网下载最新版Selenium-RC组件至本地,直接解压便可使用
启动Server:
启动命令java -jar Selenium-server.jar 可以带参数启动,如java -jar selenium-server.jar -interactive为以交互模式启动,这里自己可以将启动操作制作成简单的.bat或.sh脚本,如bat脚本(此脚本与selenium- server.jar在同一级目录下):
- @echooff
- rem---------------------------------------------------------------------------
- remStartSeleniumServer
- remAddbypengyao08/26/2010
- rem---------------------------------------------------------------------------
- java-jarselenium-server.jar
开发运行测试用例:
这里采用java语言为例来进行说明:
1. 解压Selenium-RC压缩包,取出selenium-java-client-driver.jar
2. 打开Java IDE(Eclipse, NetBeans, IntelliJ, Netweaver, etc.)
3. 新建一个project
4. 将selenium-java-client-driver.jar导入此project的classpath
5. 将Selenium-IDE录制好的html脚本转换成java文件,导入新建的project(可能需要稍作修改,如添加assert判断用例是否测试通过),或直接使用selenium-java-client API编写测试用例。本工具同时支持Junit和TestNg测试框架。
6. 启动Selenium Server
7. 在Java IDE 或命令行执行编写好的测试用例
4.Selenium-RC工作原理
(1).测试案例(Testcase)通过Client Lib的接口向Selenium Server发送Http请求,要求和Selenium Server建立连接。
(2).Selenium Server的Launcher启动浏览器,把Selenium Core加载入浏览器页面当中,并把浏览器的代理设置为Selenium Server的Http Proxy。
(3).测试案例通过Client Lib的接口向Selenium Server发送Http请求,Selenium Server对请求进行解析,然后通过Http Proxy发送JS命令通知Selenium Core执行操作浏览器的动作。
(4).Selenium Core接收到指令后,执行操作。
(5).浏览器收到新的页面请求信息(因为在(4)中,Selenium Core的操作可能引发新的页面请求),于是发送Http请求,请求新的Web页面。
由于Selenium Server在启动浏览器时做了手脚,所以Selenium Server会接收到所有由它启动的浏览器发送的请求。
(6).Selenium Server接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。
(7).Selenium Server的Http Proxy把接收的Web页面返回给浏览器。
5.Selenium-RC优缺点
与Watij对比的优势:
编号 Selenium Watij
1 跨浏览器 仅IE
2 跨操作系统 仅Windows
3 支持多数主流编程语言C#,Java,PHP,Ruby,Prel,Groovy,Python等 仅java
4 提供Hudson插件,容易与Hudson整合 未提供Hudson插件
5 可以录制和回放脚本,并可以将录制好的脚本转换成各种主流编程语言 未提供此功能
6 API强大,文档全 ?
7 属于同类产品中主流,官方资料详细、拥有正规的中文论坛 较主流,资料不是特别多
8 发展迅速 发展缓慢,出现替代产品
缺点:
1. 对弹出窗口、上传、下载功能测试不太方便,需要借助第三方工具包AutoIt3(但是在使用过程中没有遇见什么问题,可能这个问题是以前版本的问题,而且watij这方面也存在点问题)
6.Selenium-RC与Hudson整合
Selenium提供了Hudson持续集成插件,可以与Hudson进行整合(这里如果确定采用此工具再具体研究怎么整合)。
7.Selenium-RC常用API
一. 文本框Text box
1. 向文本框中填写信息
- type(java.lang.Stringlocator,java.lang.Stringvalue) //eg.selenium.type("salutationText","abc");
2. 取出某个文本框中已经填写的信息
- java.lang.StringgetValue(java.lang.Stringlocator)
- //eg:selenium.getValue("xpath=//input@name='addProfileLastName'");
3. 判断某文本框是否可编辑
- booleanisEditable(java.lang.Stringlocator) //eg.selenium.isEditable("xpath=//input@name='addProfileLastName'");
二.下拉框 Drop down list
1. 向下拉框中选值
- select(java.lang.StringselectLocator,java.lang.StringoptionLocator) //eg.selenium.select("typeSelect","label=Date");
2. 取出某个下拉框中已经选择的值
- java.lang.StringgetSelectedLabel(java.lang.StringselectLocator) //eg.selenium.getSelectedLabel("xpath=//SELECT@name='addSatution'")
3. 取出某个下拉框中所有的选项
- java.lang.String[]getSelectOptionsgetSelectOptionsgetSelectOptions(java.lang.StringselectLocatogetSelectOptionsr) //eg.selenium.getSelectOptions("//div@id='mysearch_tips'/select")
三.按钮或链接Button & Link
单击
- click(java.lang.Stringlocator) //eg.selenium.click("link=Administration"); //selenium.click("xpath=//input@checkfield='addIndicatorName'and@name='addBtn'");
四. 单选框或多选框 Radio Box & Check Box
1. 选择
1. 不选
2. 判断是否选择
五.表格Table
1. 取出表中某个单元格的值,下标从 0 开始
- java.lang.StringgetTable(java.lang.StringtableCellAddress) //eg.selenium.getTable("//div@id='profiles-search'/div2/table.1.1");
六.其他 others
1. 取某个元素的特定属性值
- java.lang.StringgetAttribute(java.lang.StringattributeLocator) //eg.selenium.getAttribute("xpath=//img@name='picName'@style")
2.取某元素的 text 值
3. 取当前页面的 Title
4. 判断页面是否有特定的元素
- booleanisElementPresent(java.lang.Stringlocator) //eg.booleanisElementPresent(java.lang.Stringlocator)
5. 判断页面是否有特定文字
6. 判断某个元素是否 invisible,图片是空的 the "display" property to "none"或 CSS "visibility" property to "hidden"
- booleanisVisible(java.lang.Stringlocator) //eg.selenium.isVisible("xpath=//img@name='picName'")
7. 模拟 Keyup 事件
- keyUp(java.lang.Stringlocator,java.lang.StringkeySequence) //eg.selenium.keyUp("creditCardExpMonth","1");
8. 打开一个 url,相对或绝对
9. 刷新页面
10. 控制每步操作间隔的时间,milliseconds
11. 开始一个 Selenium session
12. 结束测试
13. 等待新页面加载
14. 页面最大化
8.完整的一个例子
下面是一个完整的创建JDBC连接池和删除JDBC连接池的测试用例:
- packagecom.tongweb.selenium.test;
- importcom.thoughtworks.selenium.SeleneseTestCase;
- /**
- *集中管理工具中创建一个名为jdbcpool_test连接池,创建成功后进行删除操作,
- *为了更好的展示界面是如何操作的,所以加入不少sleep语句。
- *@authorpengyao07/09/2010
- *
- */
- publicclassCreateAndDeleteJdbcConnectPoolTestCaseextendsSeleneseTestCase{
- publicvoidsetUp()throwsException{
- setUp("http://localhost:9060/","*firefox");
- }
- publicvoidtestCreateAndDeleteJdbcConnectPool()throwsException{
- selenium.windowMaximize();
- selenium.open("/gm/login.jsf");
- selenium.type("j_username","tongweb");
- selenium.type("j_password","tongweb");
- selenium.click("j_security_check");
- selenium.waitForPageToLoad("30000");
- selenium.selectFrame("mainFrame");
- selenium.click("b1");
- //jdbcpool_testJDBC连接池radio在页面的xpath路径
- Stringjdbcpool_test="//tr[td/a='jdbcpool_test']/td[1]/input";
- //判断如果jdbcpool_testJDBC连接池已存在,则先进行删除操作
- booleanisExist=selenium.isElementPresent(jdbcpool_test);
- if(isExist){
- selenium.click("//tr[td/a='jdbcpool_test']/td[1]/input");
- Thread.sleep(3000);
- selenium.click("TongWebIndex:j_id_id273");
- Thread.sleep(3000);
- selenium.waitForPageToLoad("30000");
- }
- //填写必要参数
- selenium.click("TongWebIndex:j_id_id271");
- selenium.waitForPageToLoad("30000");
- selenium.type("createConnectPool:ConnPoolName","jdbcpool_test");
- selenium.select("createConnectPool:resType",
- "label=javax.sql.DataSource");
- selenium.select("createConnectPool:dataSourceMap",
- "label=MySQLConnector/JType4DriverforMySQL");
- selenium.type("createConnectPool:ConnPoolDesc","aaa");
- selenium.addSelection("createConnectPool:j_id_id137",
- "label=192.168.11.24:7200");
- selenium.click("createConnectPool:j_id_id148");
- selenium.waitForPageToLoad("30000");
- selenium.type("createConnectPoolProps:username","root");
- selenium.type("createConnectPoolProps:connURL",
- "jdbc:mysql://192.168.11.24:3306/test?user=root");
- selenium.click("add");
- selenium.type("propName_0","ddd");
- selenium.type("propValue_0","ddd");
- selenium.click("createConnectPoolProps:j_id_id372");
- selenium.waitForPageToLoad("30000");
- Thread.sleep(5000);
- //判断是否创建成功
- assertTrue(selenium.isElementPresent(jdbcpool_test));
- selenium.click("//tr[td/a='jdbcpool_test']/td[1]/input");
- Thread.sleep(3000);
- selenium.click("TongWebIndex:j_id_id273");
- selenium.waitForPageToLoad("30000");
- //判断是否删除成功
- assertFalse(selenium.isElementPresent(jdbcpool_test));
- }
- }
9.Selenium常见问题
1.需要把浏览器的启动程序添加至PATH环境变量中,否则会抛出异常。提示不能打开浏览器;
2.如果将浏览器的启动程序添加至PATH环境变量中,还是不能打开浏览器,可能是Selenium版本不支持此浏览器版本,支持信息可以通过查看 Selenium-RC的selenium-server.jar中install.rdf 文件看此Selenium都支持那些版本浏览器;
3. 抛Element not found异常时, 一般有两个原因:一个是页面还没加载完,需要添加一条Thread.sleep()语句;一个可能是查找方式有误,比如xpath或id不正确,或查找顺序不正确;
4.selectFrames进入某个frame后,重新选择其它frame时,有时需要退出本frame,如selenium.selectFrame("relative=up");
5.使用Selenium IDE进行脚本录制时,在TWNS管理控制台对功能树的操作不能录制下来,需要手动添加这部分的脚本 ;
6.有时元素找到了,但是挂在那(比如说一个submit按钮,附带了onclick="return xxx"触发事件,把onclick去掉就好了,这个还没找到好的解决方法)
http://pengtyao.iteye.com/blog/758273
相关推荐
selenium + python的自动化测试书籍,高清版,适合软件自动化测试人员,由浅入深,代码实例丰富,对自学者很有帮助
引言:什么是RFS——RobotFramework+Selenium2library,本系列主要介绍web自动化验收测试方面。之前一直使用Selenium2Library的0.5.2版本,现在官方推出了1.0.0版本,本人在升级过程中遇到了很多的问题,于是痛下...
web自动化测试框架及实践,应用python+selenium+pytest集成了web页面的功能巡检、写测试报告以及邮件发送测试结果等功能。
1.着重介绍如何使用selenium和webdriver两种开源的自动化工具,来构建自动化测试体系。 2.已测试googlemail为具体范例提供了完整的web自动化测试解决方案。 3.从实战出发,指引大家使用自动化测试平台。 4.提供...
Selenium是一个主要用于Web应用程序自动化测试的工具集合,在行业内已经得到广泛的应用。本书介绍了如何用Python语言调用Selenium WebDriver接口进行自动化测试。主要内容为:基于Python 的 Selenium WebDriver 入门...
资源名称:SELENIUM 2 自动化测试实战 基于PYTHON语言内容简介:《Selenium 2自动化测试实战——基于Python语言》共分 14 章。第 1 章是自动化测试相关基础知识的介绍;第 2 章到第 10 章是《Selenium 2自动化测试...
基于Selenium 2的自动化测试 完整版 selenium 自动化 测试
引言:什么是RFS——RobotFramework+selenium2library,本系列主要介绍web自动化验收测试方面。 引言:什么是RFS——RobotFramework+selenium2library,本系列主要介绍web自动化验收测试方面。 ==RobotFramework...
包含:selenium-core-1.0.1.zip、selenium-grid-1.0.4-bin.tar.bz2和selenium-remote-control-1.0.2.zip,欢迎下载!
个人觉得这个工具比任何自动化测试框架都好使,使用关键字和数据双驱动,不需要写一行代码,无需维护脚本,只需要维护用例数据。Web元素只需要在Chrome中复制xPath即可,定位非常高效。 工具安全无木马,目的只为...
github地址: https://github.com/wuranxu/webTest 基于Python的webUI自动化测试框架,支持多平台~带有自动下载chrome驱动功能
Python Web自动化测试工具Selenium电子书
引言:什么是RFS——RobotFramework+selenium2library,本系列主要介绍web自动化验收测试方面。好久没写东西了,最近没怎么弄QTP了,之前一直想找一个能方便管理QTP对象的东东,FrameworkManage用excel管理虽然是...
防自动化检测反爬,防止selenium等自动化工具运行的检测代码,代码为 js 检测
Selenium是一个Web的自动化测试工具,可以用于软件测试与爬虫中页面的自主挖掘。
用于Web应用程序测试的工具。Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE,Mozilla和Firefox等。这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很...
《Selenium+java进行web自动化.doc》文档中介绍了Java的安装、Selenium IDE的安装、Selenium的使用、元素操作等。 Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...
[零成本实现Web自动化测试-基于Selenium和Bromine].温素剑.扫描版
使用Java+Maven+Selenium+TestNG+Jedis+Jenkins搭建的WebUI自动化测试框架,资源的大体介绍如下链接http://note.youdao.com/noteshare?id=dc564343fd126f497074f6d7560c9f5e&sub=387EB3B1BAC945CEA71A5BDBC6484473
Web自动化测试工具SELENIUM.pdf