第一部分: Selenium的安装和使用(火狐)
第一步:在火狐中添加附组插件 -selenium
第二步:打开插件,打开一个新的测试
第三步:给该测试命名
第四步:输入测试链接
第五步:录制自己的登录操作,完成后点击停止按钮,并命名保存
第六步:可以点击播放,也可以导出代码
点击播放,就能看到自己刚才的所有操作过程,速度很快
保存selenium可识别的文件
导出自己可参考的代码
选择导出的语言,下面三个选项的解释
包括源跟踪代码注释
将步骤描述作为单独的注释包括进来
导出用于Selenium网格
第二部分:在程序如何利用导出的java代码
第一步:首先导入依赖
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
第二步:下载对应的浏览器驱动(谷歌为例),选择对应的版本,下载地址
火狐下载地址:火狐下载地址
第三步:解压放在 C:\Program Files (x86)\Google\Chrome\Application 下
第四步:将导出的代码进行改造
首先在src/main/java/ 的任意一个包下,和导出的参考代码命名方式相同
导出代码
新建的类
将代码复制过去后进行改造
源代码,不能运行缺少驱动,一定要主要导入的包的问题,引入包的时候别错
需要Junit这个依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.HashMap;
import java.util.Map;
public class Login22Test {
private WebDriver driver;
private Map<String, Object> vars;
JavascriptExecutor js;
@Before
public void setUp() {
driver = new FirefoxDriver();
js = (JavascriptExecutor) driver;
vars = new HashMap<String, Object>();
}
@After
public void tearDown() {
driver.quit();
}
@Test
public void login22() {
// Test name: login22
// Step # | name | target | value | comment
// 1 | open | /mass/to_login | |
driver.get("http://localhost:8080/mass/to_login");
// 2 | setWindowSize | 1563x886 | |
driver.manage().window().setSize(new Dimension(1563, 886));
// 3 | click | id=sn | |
driver.findElement(By.id("sn")).click();
// 4 | type | id=sn | 20170406101022 |
driver.findElement(By.id("sn")).sendKeys("20170406101022");
// 5 | click | id=password | |
driver.findElement(By.id("password")).click();
// 6 | type | id=password | 000000 |
driver.findElement(By.id("password")).sendKeys("000000");
// 7 | click | css=.button | |
driver.findElement(By.cssSelector(".button")).click();
// 8 | close | | |
driver.close();
}
}
进行改造
这部分改为谷歌驱动,因为是火狐导出,谷歌测试,因此需要改为谷歌的
点击运行,或更改账号密码也是可以的
结果
到此简单的自动化测试登录模块就完成了。