http://code.google.com/p/selenium/是开源的自动化测试框架,支撑主流的所有的游览器,支持多语言开发,
要使用selenium2的pom依赖如下
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
<version>2.7.0</version>
</dependency>
新建一个baidu的首页的页面对象,里面有各个WebElement元素。
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.How;
public class BaiduSearchPage {
// Here's the element
private WebElement kw;//关键字的输入
private WebElement su;//提交表单
@FindBy(how = How.NAME, using = "tj_login")
private WebElement tj_login; //百度用户登录用户名显示
private WebElement s_username_top;
//点击登录操作
public void linkLogin(){
tj_login.click();
}
//获取登录后用户名
public String getUsername(){
return s_username_top.getText();
}
//搜索关键字
public void searchFor(String text) {
// And here we use it. Note that it looks like we've
// not properly instantiated it yet....
kw.sendKeys(text);
su.submit();
}
}
登录页面
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.How;
public class BaiduLoginPage {
@FindBy(how = How.NAME, using = "username")
private WebElement username_normal;
private WebElement normModPsp;
@FindBy(how = How.XPATH, using = "/html/body/center/div/div[2]/div/table/form")
private WebElement login;
public void login(String username, String passwd) {
username_normal.sendKeys(username);
normModPsp.sendKeys(passwd);
login.submit();
}
}
测试代码如下
import org.junit.Assert;
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.PageFactory;
public class AppTest {
@Test
public void testindex() {
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com/");
BaiduSearchPage page = PageFactory.initElements(driver, BaiduSearchPage.class);
page.searchFor("koubei");
Assert.assertEquals("百度搜索_koubei", driver.getTitle());
driver.close();
}
@Test
public void testlogin() {
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com/");
BaiduSearchPage baiduSearchPage =PageFactory.initElements(driver, BaiduSearchPage.class);
baiduSearchPage.linkLogin();
BaiduLoginPage page = PageFactory.initElements(driver, BaiduLoginPage.class);
page.login("username", "passwd");
Assert.assertEquals("username", baiduSearchPage.getUsername());
Assert.assertEquals("百度一下,你就知道", driver.getTitle());
driver.close();
}
这里使用chrome主要是因为启动比firefox快一点 需要在http://code.google.com/p/chromium/downloads/list 下一个chromedriver 并且要把path中
分享到:
相关推荐
selenium入门数据,测试人员必备
通过阅读能够对刚接触Appium 和Selenium 2技术的人有一个很大的帮助理解作用。
简单的Java+selenium初级入门知识,自己自学记录的,仅供参考。
cd D:\selenium快速入门示例 D: set JAVA_HOME=E:\tools\java\jdk1.8.0_181x64 set PATH=%JAVA_HOME%\bin;%PATH% javac -encoding utf-8 -Djava.ext.dirs=. SogouTest1.java java -Djava.ext.dirs=. SogouTest1 ...
Selenium新手入门教程,便于学习和使用selenium
昨天群里有朋友问我selenium入门例子,我今天抽了点时间写了一段简单的代码,此代码适合刚刚学习selenium的人员参考,此代码是selenium2 RC 调用chrome driver访问百度,输入Jack_test 搜索. 代码里面含资源包:selenium...
该文档为selenium2的学习资料,学习要点简明清晰,覆盖面广,包含元素定位,元素操作,和testNG测试狂叫的介绍
Selenium基础入门
2. Selenium-Core:这是Selenium测试机制的核心,包含了一套基于JavaScript的断言机制和测试套件运行器。它可以运行在多种浏览器上,负责执行由测试脚本传递的命令。测试脚本可以用HTML表格布局编写,或者使用支持的...
selenium快速入门及常用api
本文档是Selenium2 初学者快速入门;Selenium 是时下很流行的面向 web 的自动化测试工具,它以执行效率高,覆盖的浏览 器广泛等优点得到了很多人的亲睐。Selenium 是一个健壮的工具集合,跨很多平台支持针 对基于 ...
基于Selenium 2的自动化测试 从入门到精通PDF电子书下载 带书
本文从初学者的角度对自动化测试工具 Selenium 2(即 WebDriver)进行全面阐述,重点 介绍在非测试框架下使用 Selenium 进行自动化测试,因为只有掌握 Selenium 的自动化测试 原理,以后在各种测试框架下才能灵活...
selenium入门.pptSelenium是ThroughtWorks公司的开源Web功能测试工具系列
本套学习资料专为想要入门Selenium的Java开发人员设计,涵盖了从基础到中级的全方位知识,旨在帮助学习者快速掌握Selenium的核心概念和技术。 首先,Selenium的核心组件包括Selenium WebDriver,它是一个API,允许...
selenium2从入门到精通书籍,提供selenium初学者学习的基础知识。
Selenium自动化测试工具(新手入门教程)~~~
描述selenium2.0的入门知识,环境搭建等