文章目录
写在前面
-
因为软件测试的需求和博主比较经常使用Java,于是,想在Idea中集成selenuim,用Java编写测试代码,因此有了这篇文章来记录一下过程。
-
资源指路:
感谢上面博客的大佬。
-
另外,如果你不用maven的话,也可去官网自行下载jar包进行导入。资源下载指路:selenium+IDEA
PS: edge浏览器版本为87.0.664, 无积分同学可私信我传给你。
01 | 新建Maven项目
- 不使用骨架创建,直接点击左侧Maven,然后一路next即可。
02 | idea集成Selenium
- pom.xml中添加selenium的依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <dependencies> <!-- selenium-java --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.4.0</version> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-api</artifactId> <version>3.14.0</version> </dependency> </dependencies> </project>
- 下载安装浏览器驱动
-
先查看自己浏览器的版本:打开浏览器–》点击右上角三个点–》帮助与反馈–》关于microsoft Edge
-
去selenium官网下载对应浏览器与对应版本的驱动(selenium官网需要科学上网,另外,我的电脑安装了vmware之后,因为vmware证书的问题不能科学上网了,如果有小伙伴知道怎么解决的话我虚心求教!!)
打开Seleniun官网 https://www.selenium.dev
选择文档 Documentation
选择Selenium安装 https://www.seleniumdev/documentation/zh-cn/selenium_installation
选择安装WebDriver二进制文件https://www.seleniumdev/documentation/zh-cn/selenium_installation/installing_webdriver_binaries
选择WebDriver二进制文件https://www.seleniumdev/documentation/zh-cn/webdriver/driver_requirements
找到快速参考,如下图所示 :
-
如果你不想去seleium官网下载驱动的话也可以尝试以下地址:
各浏览器下载地址:
Firefox浏览器驱动:geckodriver
Chrome浏览器驱动:chromedriver
IE浏览器驱动:IEDriverServer
Edge浏览器驱动:MicrosoftWebDriver
注:部分浏览器驱动地址需要科学上网。
-
03 | IDEA集成testNG
- 下载插件create TeatNG xml
- 在pom.xml中添加依赖
<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.10</version> </dependency>
04 | 编写测试代码
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;
import java.io.File;
public class test {
public static void main(String[] args) {
File file = new File("Z:\\Lj\\driver\\msedgedriver.exe");
System.setProperty("webdriver.edge.driver",file.getAbsolutePath());
WebDriver driver = new EdgeDriver();
driver.get("https://www.baidu.com/");
String title = driver.getTitle();
System.out.printf(title);
driver.close();
}
}
05 | 用selenium自动化测试项目登录功能
//import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.edge.EdgeDriver;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import java.io.File;
public class testLogin {
@DataProvider(name="testdata")
public Object[][] TestDataFeed(){
//创建一个二维数组
Object [][] baidudata=new Object[5][2];
// 设置数组的元素值,这里是设置第一个用户名 : 用户名和密码都错误
baidudata[0][0]="java";
// 设置第一个用户密码
baidudata[0][1]="java";
// 设置第二个用户名称 : 用户名和密码都正确
baidudata[1][0]="123";
// 设置第二个用户密码
baidudata[1][1]="123";
// 设置第三个用户名称 : 用户名和密码都为空
baidudata[2][0]="";
// 设置第三个用户密码
baidudata[2][1]="";
// 设置第四个用户名称 :用户名正确,密码错误
baidudata[3][0]="123";
// 设置第四个用户密码
baidudata[3][1]="1234";
// 设置第五个用户名称 :用户名错误,密码正确
baidudata[4][0]="aaa";
// 设置第五个用户密码
baidudata[4][1]="123";
// 返回数据传给脚本
return baidudata;
}
@Test(dataProvider = "testdata")
public void TestLogin1(String username, String password) throws InterruptedException {
File file = new File("Z:\\Lj\\driver\\msedgedriver.exe");
System.setProperty("webdriver.edge.driver",file.getAbsolutePath());
WebDriver driver = new EdgeDriver();
driver.manage().window().maximize();
driver.get("http://localhost:8080/loginPage");
WebElement text_name = driver.findElement(By.id("name"));
WebElement text_pwd = driver.findElement(By.id("password"));
driver.findElement(By.id("name")).clear();
text_name.sendKeys(username);
Thread.sleep(1000);
driver.findElement(By.id("password")).clear();
text_pwd.sendKeys(password);
Thread.sleep(1000);
text_pwd.submit();
Thread.sleep(1000);
// 关闭页面,关闭相关进程
driver.quit();
}
}
06 | testNG导出测试报告
07 | pom.xml依赖飘红处理方法
-
如果你遇到如下情况:依赖死活飘红,且左侧项目树形结构目录有红色波浪线,那么可以手动导入jar包。
-
手动导入jar包方法:
file—》project structure–》libraries
完成。