初识自动化测试

一、什么是自动化测试

自动化测试主要解决回归测试问题,通过编写代码和脚本,让计算机自动执行测试用例,替代传统的手工测试,就像有一个不知疲倦的测试助手,可以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();
    }
}

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

↓↓↓↓

自动化测试常见函数

相关推荐
flash俊杰18 小时前
pdf.js detach 血案:structuredClone transfer 如何吃掉你的 ArrayBuffer
测试
狂师1 天前
GitHub上开源真机测试工具mobile-mcp,说句话就能让AI在手机上跑用例!
人工智能·开源·测试
三翼鸟数字化技术团队2 天前
测试人员代码阅读实战指南
测试
得物技术2 天前
Jev 实战:为AI工作流引入轻量决策层 x10倍提速|得物技术
python·llm·测试
挖掘狂人2 天前
AI 代码上线前,真正的瓶颈不在 "写",而在 "验"
ai编程·测试·代码规范
蒸鱼Yuzheng2 天前
性能 CI 成本优化:设备分钟、风险分层与自适应测试选择
自动化测试·ci/cd·性能测试·测试平台·成本优化
hpoenixf2 天前
测试比实现还多之后:怎样让文档、代码和测试一起向前
测试
七夜zippoe3 天前
软件工程3.0时代,大模型驱动测试实战指南
大模型·实战·软件工程·测试·驱动软件
自动化测试行业观察3 天前
AI智能测试用例生成技术解析:多源融合+LLM混合生成方案与实践
自动化测试·人工智能·科技·测试用例·智能化测试·ai测试平台·ai智能遍历