初识自动化测试

一、什么是自动化测试

自动化测试主要解决回归测试问题,通过编写代码和脚本,让计算机自动执行测试用例,替代传统的手工测试,就像有一个不知疲倦的测试助手,可以24小时不间断地工作。自动化测试有多种类型:Web自动化测试、接口自动化测试、移动端自动化测试、单元测试等等,这里我们介绍的是Web自动化测试。

自动化测试与手工测试的区别:

特性 手工测试 自动化测试
执行速度 快(可并行执行)
准确性 可能出错 精确无误
成本 短期低,长期高 短期高,长期低
覆盖范围 有限 广泛且深入
回归测试 效率低 效率极高

二、环境搭建

软件:IntelliJ IDEA

选择的工具栈:

Java + Maven:项目管理和编程语言、

Selenium WebDriver:浏览器自动化框架

WebDriverManager:自动管理浏览器驱动 (浏览器驱动两种下载方式介绍

JUnit:测试框架

1、创建项目

2、配置依赖

JUnit Jupiter 是 JUnit 5 的核心模块,用于编写和运行单元测试

复制代码
<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter</artifactId>
    <version>5.8.2</version>
    <scope>test</scope>
</dependency>

WebDriverManager 是一个工具库,用于自动管理 WebDriver(如 ChromeDriver等)的下载和配置

复制代码
<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>5.6.2</version>  <!-- 或者 5.7.0 -->
</dependency>

Selenium 是一个用于自动化Web应用测试的工具,selenium-java 包含了 Selenium WebDriver 的 Java 绑定,用于编写自动化测试脚本

复制代码
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>4.9.0</version>
</dependency>

将以上三个依赖粘贴到pom.xml文件中 --->> 点击右上角蓝色m标志

接下来就可以正式编写测试代码了

三、简单测试代码介绍

测试文件位置:

我选择的浏览器驱动是EdgeDriver (其他介绍参考浏览器驱动两种下载方式介绍

--remote-allow-origins=* : 允许任何来源的页面或应用与浏览器实例进行通信

常用浏览器启动参数:

输入要使用的网址:

启动测试代码;

很好,这时候我们看到报错了😈:

⚠️这个报错因为微软停用了历史驱动的网址,更换为了下面这个链接,但是selenium官方还没有修复这个问题,所以我们需要手动设置一下环境变量。

"wdm.edgeDriverUrl", "https://msedgedriver.microsoft.com/"

手动设置环境变量:

运行成功:

完整代码:

java 复制代码
import io.github.bonigarcia.wdm.WebDriverManager;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.edge.EdgeOptions;

public class firstDemo {
    public void first () {

        //设置环境变量
        System.setProperty("wdm.edgeDriverUrl", "https://msedgedriver.microsoft.com/");
        //自动下载并配置浏览器
        WebDriverManager.edgedriver().setup();

        //创建浏览器配置对象
        EdgeOptions options = new EdgeOptions();
        //允许该对象访问所有链接
        options.addArguments("--remote-allow-origins=*");
        //创建浏览器并启动
        EdgeDriver driver = new EdgeDriver(options);
        //输入网址
        driver.get("https://www.baidu.com");
    }

    public static void main(String[] args) {
        firstDemo test = new firstDemo();
        test.first();
    }
}

做到这里我们就初初初步认识自动化测试啦,下次我们将学习自动化测试的常用函数。

↓↓↓↓

自动化测试常见函数

相关推荐
刘棕霆12 小时前
造数脚本越堆越乱:稳定的沉淀成引擎,变化的留在配置
aigc·agent·测试
花椒技术1 天前
AI Coding 后半程:6 类 QA Skills 如何接住测试与发布?
单元测试·ai编程·测试
凉凉的知识库2 天前
用 GPT-5.6 SOL 写了个 VS Code 插件,效果出乎意料
api·测试·visual studio code
天才测试猿2 天前
Selenium自动化测试网页加载太慢怎么解决?
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
eaglewgs2 天前
从软件测试角度聊聊“Prompt / Context / Harness区别”
测试开发·ai·测试·大模型应用·agent应用
aoi4 天前
如何让 Playwright 自动化测试的显示鼠标?—— 注入式 Mouse Helper 实践
测试
名字还没想好☜4 天前
用 pytest fixture 组织可维护的测试:告别一堆重复的 setUp
数据库·python·oracle·pytest·测试
晚风吹长发5 天前
探索软件测试——用例篇
大数据·linux·服务器·压力测试·测试·测试方法
刘棕霆5 天前
企业测试造数为什么这么难?我把熟手经验做成了一个可交付的造数 Skill
aigc·agent·测试