- Selenium + Python 自动化测试环境搭建
- 怎样开始用selenium进行自动化测试(个人总结)
- 关于学习selenium进行自动化测试所需要学的知识
- Selenium 使用介绍
- Selenium 命令列表
- Selenium 快速入门
- Web软件测试工具Selenium:如何选取元素
- Selenium RC在浏览器兼容性测试的用武之地
- selenium开源功能测试工具
- Selenium执行测试脚本稳定性的一些经验分享交流
- Web测试工具Selenium入门心得
- Selenium自动化测试用例设计注意事项(一)
- 基于TestNG 与Selenium 的自动化测试设计与实施
- 毁三观的 Selenium 自动化测试框架
- Selenium自动化测试用例设计注意事项(二)
- 用Selenium实现页面自动化测试
- Selenium实战:.Net下的自动化测试搭建
- 用 Selenium 自动化验收测试(一)
- 用 Selenium 自动化验收测试(三)
- 使用开源工具SeleniumRC进行功能测试
- 用 Selenium 自动化验收测试(二)
- 用 Selenium 自动化验收测试(四)
- 应用Selenium和Ruby进行面向领域的Web测试
- WebTest比拼Selenium:模拟和真实浏览器上的测试
- Selenium实例:AJAX自动化测试应用
- Selenium-集成测试工具
- 基于FireFox的测试插件 – Selenium IDE
- 基于Selenium和VSTT的网站测试自动化系统
- selenium参考手册中文翻译
- 《Selenium2自动化测试实战–基于Python语言》
- selenium webdriver (python) 第三版
- selenium-webdriver(python) (十六) –unittest 框架
- selenium webdriver (python) 第一版PDF
- selenium-webdriver(python) (十五) — 鼠标事件
- selenium-webdriver(python) (十四) — webdriver原理
- selenium-webdriver(python) (十三) — cookie处理
- 轻松自动化—selenium-webdriver(python) (十二)
- 轻松自动化—selenium-webdriver(python) (十一)
- 轻松自动化—selenium-webdriver(python) (十)
- 轻松自动化—selenium-webdriver(python) (八)
- 轻松自动化—selenium-webdriver(python) (七)
- 轻松自动化—selenium-webdriver(python) (六)
- 轻松自动化—selenium-webdriver(python) (五)
- 轻松自动化—selenium-webdriver(python) (三)
- 轻松自动化—selenium-webdriver(python) (二)
- 轻松自动化—selenium-webdriver(python) (一)
- 译:selenium webdriver (python)
- 菜鸟学自动化测试(九)—-WebDirver
- 菜鸟学自动化测试(八)—-selenium 2.0环境搭建(基于maven)
- Selenium3.0 自动化测试
- JavaScript(Node.js)+ Selenium自动化测试
- selenium操作隐藏的元素
- selenium处理select标签的下拉框
- 在Python中实现PageFactory模式
- 《selenium2 Java 自动化测试实战(第二版)》 更新2016.5.3
- 基于selenium的pyse自动化测试框架
- 自动化基础普及之selenium是啥?
- 在做自动化测试之前你需要知道的
- 自动化测试如何解决验证码的问题
- 菜鸟学自动化测试(六)—-selenium 命令之文字范本匹配
- 菜鸟学自动化测试(五)—–selenium命令之定位页面元素
- 菜鸟学自动化测试(四)—-selenium 命令之验证页面元素
- 菜鸟学自动化测试(三)—-selenium 命令
- 菜鸟学自动化测试(二)—-selenium IDE 功能扩展
- 菜鸟学自动化测试(一)—-selenium IDE
- selenium RC 环境配置
- Selenium的基本使用
- 敏捷自动化测试
- Web测试工具Selenium入门心得
Selenium 快速入门
严格说来,Selenium是一套完整的Web应用程序测试系统,它包含了测试的录制(Selenium IDE)、编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可运行于任何支持JavaScript的浏览器上。Selenium Core由一种指定格式的HTML文件驱动,在一定程度上增强了测试套件(Test Suite)的可读性。Selenium Remote Control允许测试人员使用常见的语言(自然包括C#等.NET语言)编写测试代码,并支持不同操作系统下的各种主流浏览器。Selenium Grid的作用是将测试分发至多台机器,这样便可大大加快测试速度。与WatiN相同,Selenium也是一款同样使用Apache License 2.0协议发布的开源框架。
Selenium IDE
Selenium IDE是基于FIREFOX浏览器的一个插件,提供GUI界面来运行Selenium测试。Selenium IDE提供脚本录制功能,可以将用户在浏览器中执行的操作记录下来,生成各种形式的脚本,可以将这些脚本保存供以后使用。
安装Selenium IDE的步骤如下:
* 从www.openqa.org/selenium-ide/download.action下载Selenimu IDE(这是一个XPI后缀的文件)。
* 启动FIREFOX浏览器,打开刚才下载的文件。
* 重启FIREFOX浏览器,在工具菜条下应该就可以看到Selenium IDE菜单项
-----------------------------------
一、Selenium-RC 是 selenium-remote control 缩写,是使用具体的语言来编写测试类。
二、准备工作: 1,下载 selenium 了,到http://www.openqa.org/selenium/下载就可以了,记得选择selenium-rc 的版本
2, 学习一下xpath 的知识。有个教程:http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.html
3, 安装 jdk1.5
三、selenium-rc 一些使用方法
1,解压selenium-rc压缩包
2,启动服务器
Selenium Server是用JAVA实现的,相应的库文件在HOME/server/selenium-server.jar。运行如下代码从命令行启动:
java 代码 : java -jar selunium-server.jar
四、编写测试用例
需要的JAR: selenium-java-client-driver.jar;junit
编写一个JUNIT的单元测试,要构建一个Selenium,包括如下步骤:
* 构建一个Selenium实例
* 启动Selenium实例
* 执行Selenium命令,并验证结果。
* 关闭Selenium实例
如下是一个示例,用来测试http://www.google.com/,查找selenium,期望结果中包含"OpenQA: Selenium"
1. package com.thoughtworks.selenium; 2. 3. import junit.framework.*; 4. 5. import org.openqa.selenium.server.*; 6. 7. public class GoogleTest extends TestCase 8. { 9. private Selenium selenium; 10. 11. public void setUp() throws Exception { 12. String url = "http://www.google.com"; 13. selenium = new DefaultSelenium("localhost", SeleniumServer.getDefaultPort(), "*firefox", url); 14. selenium.start(); 15. } 16. 17. protected void tearDown() throws Exception { 18. selenium.stop(); 19. } 20. 21. public void testGoogleTestSearch() throws Throwable { 22. selenium.open("/intl/zh-CN/"); 23. selenium.type("q", "selenium"); 24. selenium.click("btnG"); 25. selenium.waitForPageToLoad("30000"); 26. assertEquals("selenium - Google 搜索", selenium.getTitle()); 27. 28. } 29. 30. } |
五、多环境测试
package test; import org.junit.Test; import junit.framework.TestCase; import com.thoughtworks.selenium.DefaultSelenium; @Test private void script(Selenium selenium) throws Exception { |
六、如何选取元素
selenium提供如下强大的定位元素的方法。
id=id name=name dom=javascriptExpression xpath=xpathExpression link=textPattern css=cssSelectorSyntax |
1 通过ID,name选择元素 : 如 selenium.type("id=q","百度"); selenium.type("name=search","百度")
2 link= 根据链接文字来操作:如 selenium.click("link=个人资料");
3 根据XPath来选择元素 : XPath Checker
* xpath=//img[@alt='The image alt text'] * xpath=//table[@id='table1']//tr[4]/td[2] * xpath=//a[contains(@href,'#id1')] * xpath=//a[contains(@href,'#id1')]/@class * xpath=(//table[@class='stylee'])//th[text()='theHeaderText']/../td * xpath=//input[@name='name2' and @value='yes'] * xpath=//*[text()="right"] 如: selenium.type("xpath=//input[@name='user.email']", "xxx@123.com"); // 向input中type为text的栏位键入信息 selenium.check("xpath=//input[(@name='user.sex')and(@value='男')]");// 向input中type为radiod的 选取 |
4 dom选择
* dom=document.forms['myForm'].myDropdown * dom=document.images[56] * dom=function foo() { return document.links[1]; }; foo(); |
5 css选择器
这个不常用,它可以支持css2, css3选择器
* css=a[href="#id3"] * css=span#firstChild + span |
七、使用selenium 这个对象来进行测试
1 获取标 : assertEquals("Insert title here", selenium.getTitle());
2 判断页面是否存在一个user.email元素 :assertTrue(selenium.isElementPresent("xpath=//input[@name='user.email']"));
3 得到文本框里的文字: assertEquals(selenium.getValue("xpath=//input[@name='user.username']"),"xxxaas");
4 测试check box : assertTrue(selenium.isChecked("xpath=//input[(@name='user.sex')and(@value='男')]"));
5 点击提交按钮 : selenium.click("xpath=//input[@type='button']");
6 等待页面载入 : selenium.waitForPageToLoad("2000");
7 验证指定文本出现在提交给用户的页面上: assertTrue(selenium.isTextPresent("验证码输入有误,请核实后再输入"));
8 判断下拉框里选择了哪个选项 :assertEquals(selenium.getSelectedIndex("xpath=//SELECT[@name='HATIMING']"), "1");
9 如何测试一些错误消息的显示? assertTrue(selenium.getBodyText().indexOf("错误消息")>=0);
getBodyText 返回的时浏览器页面上的文字,不回包含html 代码的,如果要显示html 代码,用下面这个:selenium.getHtmlSource();
八、Firefox 的插件
1 XPath Checker :可以用这个工具测试简化我们的xpath表达式
2 Firebug
3 Selenium IDE
4 Execute JS
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论