当前位置: 首页 > article >正文

【测试】——自动化测试入门(Selenium环境搭建)

📖 前言:本文介绍了自动化测试的基础知识,重点讲解了Selenium环境的搭建。内容包括自动化测试的定义、自动化测试金字塔模型、Selenium的特点和工作原理,以及如何在Java环境中配置和使用Selenium进行UI自动化测试。


目录

  • 🕒 1. 什么是自动化
  • 🕒 2. 自动化测试金字塔
  • 🕒 3. selenium 介绍
  • 🕒 4. selenium 工作原理
  • 🕒 5. Java + Selenium 环境搭建
    • 🕘 5.1 下载驱动
    • 🕘 5.2 配置系统环境变量PATH
    • 🕘 5.3 验证环境是否搭建成功
      • 🕤 5.3.1 创建 java 项目,在 pom 文件中添加依赖
      • 🕤 5.3.2 编写代码运行

🕒 1. 什么是自动化

自动化测试指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行结果。将人为驱动的测试行为转化为机器执行的过程

🕒 2. 自动化测试金字塔

自动化测试包括UI自动化,接口自动化,单元测试自动化
按照这个金字塔模型来进行自动化测试规划,可以产生最佳的自贡话测试产出投入比(ROI ),可以用较少的投入获得很好的收益。

在这里插入图片描述
越往上越靠近用户、测试方法越简单、问题出现之后定位问题的成本越高。

🕒 3. selenium 介绍

selenium 是自动化测试框架,主要针对 web 项目进行 UI 自动化。

selenium 的特点:

  • 免费、小巧
  • 支持多语言:Java、Python、JS、Ruby、C#
  • 支持多平台:一套代码可以在 Linux、mac、Windows 上运行
  • 支持多种浏览器:Edge、Chrome、Firefox
  • 有丰富的 API
  • 支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器执行,相当于分发机的功能。

🕒 4. selenium 工作原理

在这里插入图片描述

🕒 5. Java + Selenium 环境搭建

🕘 5.1 下载驱动

前提:Java 版本最低要求为 8;推荐使用 Chrome 浏览器

下载 chrome 浏览器驱动:🔎 ChromeDriver

注:115版本后,会自动根据当前浏览器版本适配相应的驱动

在这里插入图片描述
由于Chrome经常会有自动更新,每次更新后需手动同步更新相应版本的驱动,或者一劳永逸禁用自动更新(可能会产生未知问题)。

🕘 5.2 配置系统环境变量PATH

解压下载好的驱动压缩包,将下载好的chromedriver.exe放到chrome浏览器安装路径下,随后配置环境变量,将该路径复制进去。

在这里插入图片描述

在这里插入图片描述

注:如果遇到没有列表显示的情况,可在开头输入C:\Windows\System64;解决
在这里插入图片描述

🕘 5.3 验证环境是否搭建成功

🕤 5.3.1 创建 java 项目,在 pom 文件中添加依赖

在这里插入图片描述

<dependencies>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.24.0</version>
        </dependency>
</dependencies>

🕤 5.3.2 编写代码运行

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
 
public class Main {
    public static void main(String[] args) {
    	// 创建一个 ChromeOptions 对象,用于设置 Chrome 浏览器的启动选项
        ChromeOptions options = new ChromeOptions();
        // 添加启动参数以允许来自所有源的远程访问,通常用于解决跨域问题
        options.addArguments("--remote-allow-origins=*");
        // 使用指定的启动选项创建一个新的 ChromeDriver 实例
        WebDriver webDriver = new ChromeDriver(options);
        // 使用 webDriver 实例访问百度首页
        webDriver.get("https://www.baidu.com");
    }
}

在这里插入图片描述

在这里插入图片描述

运行代码后自动跳出百度界面,则表明配置成功。


OK,以上就是本期知识点“自动化测试入门(selenium)”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页


http://www.kler.cn/news/302489.html

相关文章:

  • Golang | Leetcode Golang题解之第395题至少有K个重复字符的最长子串
  • IPC$漏洞多位密码爆破方法
  • 揭开Facebook AI的神秘面纱:如何利用人工智能提升社交体验
  • Java笔试面试题AI答之单元测试JUnit(4)
  • 亚信安全出席第五届国际反病毒大会 探究AI现代网络勒索治理
  • SprinBoot+Vue爱老助老服务平台的设计与实现
  • JAVAEE初阶第六节——网络编程套接字
  • 通信工程学习:什么是SLF签约数据定位功能
  • 携手科大讯飞丨云衔科技为企业提供全栈AI技术解决方案
  • yolov8学习笔记
  • 深入理解Java中的Lambda表达式
  • 如何利用 Smarter Balanced 塑造教育领域的 AI 治理
  • Python-pptx:如何在幻灯片中轻松插入与填充表格
  • 守护应用边界:通过反射API实现安全的输入输出过滤
  • 在Vue中,字符串转换为整数类型
  • [Xpath] Xpath基础知识
  • 【x265】码率控制模块的简单分析—块级码控工具(AQ和cuTree)
  • k8s环境搭建(续)
  • HarmonyOS开发实战( Beta5.0)使用ArkUI的FrameNode扩展实现动态布局类框架详解
  • 【VuePress 个人博客搭建】
  • 一文彻底搞懂数字孪生、仿真与虚拟调试
  • 基于SpringBoot的古城墙景区管理系统
  • OGG几何内核算法研究-大型装配模型快速载入研究
  • LVS--负载均衡调度器
  • Vue Router 中,meta 对象。
  • QGIS 如何连接空间库,并实时编辑空间表?编辑后库表如何刷新,保证是最新数据?
  • 【动态规划】(一)动态规划理论及基础题目
  • JavaScript web API part2
  • 网站如何防范BOT流量?
  • Python计算机视觉 第8章-图像内容分类