自动化测试-selenium环境搭建

文章目录

  • [1. 什么是自动化](#1. 什么是自动化)
  • [2. 自动化测试分类](#2. 自动化测试分类)
  • [3. selenium的环境搭建](#3. selenium的环境搭建)
  • [4. 测试selenium](#4. 测试selenium)

1. 什么是自动化

自动化是指使用软件工具、脚本或程序来执行一系列的任务、操作或流程,而无需人工干预或指导。

自动化测试:使用自动化工具和脚本来执行测试用例,验证软件的正确性和稳定性。自动化测试可以快速执行,并可以重复执行,以降低人工测试的成本和时间。常见的自动化测试工具包括Selenium、Appium、JUnit、PyTest等。

在软件开发、测试和运维等领域,自动化可以帮助提高效率、降低成本、减少人为错误,并能够执行大规模和重复性工作。

2. 自动化测试分类

自动化测试分类分为两种:

  1. 接口自动化测试
  2. UI自动化测试
    • 移动端自动化测试
    • web端自动化测试

Web端自动化测试是指使用自动化工具和脚本来模拟和执行Web应用程序的用户行为,自动化地验证Web应用程序的功能、性能和用户体验。

在Web端自动化测试中,可以使用各种工具和框架来编写和执行自动化测试脚本。常见的Web端自动化测试工具包括:

  1. Selenium:Selenium是最常用的用于Web端自动化测试的工具之一。它支持多种编程语言,如Java、Python、C#等,可以模拟用户在Web浏览器中的交互操作,如点击、输入文本、选择下拉框等。
  2. Cypress:Cypress是一个现代化的Web端自动化测试工具,提供简单易用的API和丰富的功能。它能够实时监控和调试测试脚本,具有高效的性能和稳定性。
  3. Puppeteer:Puppeteer是一个基于Chrome浏览器的自动化测试工具,它提供了对Chrome浏览器的完全控制。它可以模拟用户的交互行为,生成截图和PDF文件,进行性能分析等。
  4. TestCafe:TestCafe是一个跨浏览器自动化测试框架,可以在不同的浏览器中执行自动化测试。它通过浏览器的内置驱动程序来实现自动化,不需要额外的浏览器插件或驱动程序。

3. selenium的环境搭建

为什么众多自动化工具中选择selenium?

  1. 开源免费
  2. 支持多浏览器,如:Chrome,IE等
  3. 支持多系统,如"Linux,Windows,MacOS等"
  4. 支持多种编程语言
  5. selenium包提供了很多可供测试使用的API

本文主要介绍Java环境下selenium的使用

三件套:

  • JDK(版本至少是8).
  • 浏览器(推荐Chrome或Edge)
  • 浏览器驱动

浏览器驱动下载路径:https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/

以Chrome浏览器为例:

进入页面点击Downloads

这里面有很多的版本,此时需要查看我们当前浏览器的版本

我的Chrome版本是 114.0.5735.199,下载驱动时就要保证 驱动版本尽量和浏览器版本相对应.

选择对应的系统就可以了,windows系统直接下win32.zip即可

下载完成之后,压缩包里有一个 chromedriver.exe

需要把这个chromedriver.exe拖到jdk时的bin目录下

上述就是Java环境下selenium的环境搭建了

4. 测试selenium

首先打开IDEA,创建Maven项目

在项目中的pom.xml中导入selenium依赖

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

src路径下有两个目录,我们需要在test目录下的java目录中写测试代码

java 复制代码
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

public class Demo1 {
    public static void test() throws InterruptedException {
        // 创建驱动
        ChromeOptions options = new ChromeOptions();
        options.addArguments("--remote-allow-origins=*");
        ChromeDriver driver = new ChromeDriver(options);
        Thread.sleep(3000);
        // 访问baidu.com
        driver.get("https://www.bilibili.com/");
        Thread.sleep(3000);
        // 关闭页面,释放资源
        driver.quit();
    }
    
    public static void main(String[] args) throws InterruptedException {
        test();
    }
}

程序运行结果为: 打开Chrome浏览器,3秒后进入B站,再经过3s后,关闭页面

如果正常运行说明你的环境搭建成功了.

感谢你的观看!希望这篇文章能帮到你!

专栏: 《软件测试》在不断更新中,欢迎订阅!

"愿与君共勉,携手共进!"

相关推荐
测试199837 分钟前
2024软件测试面试热点问题
自动化测试·软件测试·python·测试工具·面试·职场和发展·压力测试
代码欢乐豆2 小时前
数据采集之selenium模拟登录
python·selenium·测试工具
测试杂货铺5 小时前
外包干了2年,快要废了。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
小码哥说测试6 小时前
接口测试用例设计的关键步骤与技巧解析!
自动化测试·测试工具·jmeter·职场和发展·测试用例·接口测试·postman
小白学大数据13 小时前
正则表达式在Kotlin中的应用:提取图片链接
开发语言·python·selenium·正则表达式·kotlin
awonw1 天前
[java][框架]springMVC(1/2)
测试工具·postman
迃幵chen1 天前
wireshark-网络分析工具
网络·测试工具·wireshark
孤蓬&听雨1 天前
RabbitMQ自动发送消息工具(自动化测试RabbitMQ)
分布式·测试工具·自动化·rabbitmq·自动发送消息
土小帽软件测试1 天前
jmeter基础01-2_环境准备-Mac系统安装jdk
java·测试工具·jmeter·macos·软件测试学习
qq_433716951 天前
测试分层:减少对全链路回归依赖的探索!
自动化测试·软件测试·功能测试·测试工具·回归·pytest·postman