十、自动化函数+实战

Maven环境配置

1.设计测试用例

2.创建空项目

1)添加需要的依赖pom.xml

plain 复制代码
<dependencies>
<!--    截图配置-->
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.6</version>
    </dependency>
<!--    驱动配置-->
    <dependency>
      <groupId>io.github.bonigarcia</groupId>
      <artifactId>webdrivermanager</artifactId>
      <version>5.8.0</version>
    </dependency>
<!--    库函数-->
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>4.0.0</version>
    </dependency>
</dependencies>

创建驱动对象---所有的测试用例共用一个driver对象

编写测试用例---如何划分用例?按照页面分类,每个页面是一个Java文件,页面下所有的用例统一管理

文件上传

点击文件上传的场景下会弹窗系统窗口,进行文件的选择。

selenium无法识别非web的控件,上传文件窗口为系统自带,无法识别窗口元素

但是可以使用sendkeys来上传指定路径的文件,达到的效果是一样的

WebElement ele = driver.findElement(By.cssSelector("body > div>div>input[type=file]"));

ele.sendKeys("D:\upload.html");

浏览器参数设置

1)设置无头模式

plain 复制代码
void createDriver() {
    String chromeDriverPath = "D:\\网页下载\\chromedriver-win64\\chromedriver-win64\\chromedriver.exe"; // 替换为你的 chromedriver 路径
    System.setProperty("webdriver.chrome.driver", chromeDriverPath);
    // 增加浏览器配置:创建驱动对象要强制指定允许访问所有的链接

    // 配置 Chrome 浏览器选项
    ChromeOptions options = new ChromeOptions();
    options.addArguments("--remote-allow-origins=*"); // 解决某些版本的兼容性问题

    // 初始化 ChromeDriver
    driver = new ChromeDriver(options);

}

2)设置浏览器加载策略

相关推荐
测试199835 分钟前
压力测试详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·压力测试
syker35 分钟前
NEWBASIC 2.06.7 API 帮助与用户使用手册
开发语言·人工智能·机器学习·自动化
Fr2ed0m1 小时前
Nginx防御HTTP Host头注入漏洞:实战配置漏洞修复教程
运维·nginx·http
安审若无1 小时前
linux怎么检查磁盘是否有坏道
linux·运维·服务器
HalvmånEver1 小时前
Linux的第二章 : 基础的指令(二)
linux·运维·服务器·开发语言·学习
大梦南柯1 小时前
linux创建网站
linux·运维·服务器
刘永鑫Adam1 小时前
代码管理及Linux模拟工具Git for Windows安装使用教程
linux·运维·服务器·git
孙同学_1 小时前
【Linux篇】信号从哪来?到哪去?—— Linux信号的产生方式与保存机制
linux·运维·服务器
唐古乌梁海1 小时前
【linux】crontab 命令详解,linux定时任务
linux·运维·服务器