Java+Selenium+TestNG+Allure
一、创建maven项目

二、安装selenium
1、引入selenium
通过下载jar包,或者通过maven引入。
这里使用 maven 管理项目依赖,所以在pom.xml添加以下依赖:
<!-- Selenium WebDriver Java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.0</version>
</dependency>
2、引入WebDriver
想用selenium驱动不同的浏览器需要不同的浏览器驱动,这里将会使用Chrome浏览器进行自动化测试,所以需要下载 ChromeDriver ,需要下载与目标浏览器相匹配的版本号的驱动器(不过Chrome浏览器一般都会自动更新,所以直接下载最新版的驱动器就是了)。
2.1 手动引入
手动下载地址: https://chromedriver.chromium.org/downloads
历史版本 Chrome:https://www.slimjet.com/chrome/google-chrome-old-version.php

logger.info("使用已下载的 ChromeDriver");
try {
// 设置系统属性,指定chromedriver的路径
// 从配置文件中读取 ChromeDriver 路径
String driverPath = ConfigUtils.getString("webdriver.chrome");
logger.info("ChromeDriver 路径设置为: {}" , driverPath);
System.setProperty("webdriver.chrome.driver", driverPath);
} catch (Exception e) {
logger.error("设置 ChromeDriver 路径失败: {}" , e.getMessage());
throw new RuntimeException("设置 ChromeDriver 路径失败: " + e.getMessage());
}
2.2 自动下载
webdriver驱动管理依赖,只要引入依赖.就不要我们手动的去处理浏览器版本的问题。
只需要我们在pom.xml文件中引入依赖,每次使用都会帮助我们下载新的驱动
<!-- webdrivermanager 依赖 自动检测本地浏览器版本,并从官方源下载匹配的驱动程序,无需人工干预 -->
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.8.0</version>
</dependency>
logger.info("自动下载 ChromeDriver");
WebDriverManager.chromedriver().setup();
2.3 完整代码
logger.info("初始化driver");
// 判断是否启动自动下载
if (ConfigUtils.getBoolean("webdriver.autodriver")) {
logger.info("自动下载 ChromeDriver");
WebDriverManager.chromedriver().setup();
} else {
logger.info("使用已下载的 ChromeDriver");
try {
// 从配置文件中读取 ChromeDriver 路径
String driverPath = ConfigUtils.getString("webdriver.chrome");
logger.info("ChromeDriver 路径设置为: {}" , driverPath);
System.setProperty("webdriver.chrome.driver", driverPath);
} catch (Exception e) {
logger.error("设置 ChromeDriver 路径失败: {}" , e.getMessage());
throw new RuntimeException("设置 ChromeDriver 路径失败: " + e.getMessage());
}
}
三、引入依赖
<properties>
<!-- 依赖版本 -->
<selenium.version>3.141.0</selenium.version>
<webdrivermanager.version>5.8.0</webdrivermanager.version>
<testng.version>7.8.0</testng.version>
<allure.version>2.13.2</allure.version>
<aspectj.version>1.9.20</aspectj.version>
<slf4j.version>2.0.9</slf4j.version>
<jetbrains-annotations.version>24.0.1</jetbrains-annotations.version>
<!-- 插件版本 -->
<maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version>
<maven-surefire-plugin.version>3.1.2</maven-surefire-plugin.version>
<allure-maven.version>2.10.0</allure-maven.version>
<maven-assembly-plugin.version>3.6.0</maven-assembly-plugin.version>
</properties>
<dependencies>
<!-- Selenium WebDriver Java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>${
selenium.version}</version>
</dependency>
<


607

被折叠的 条评论
为什么被折叠?



