自动化测试-selenium环境搭建

文章目录

  • 1. 什么是自动化
  • 2. 自动化测试分类
  • 3. 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依赖

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

src路径下有两个目录,我们需要在test目录下的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.comdriver.get("https://www.bilibili.com/");Thread.sleep(3000);// 关闭页面,释放资源driver.quit();}public static void main(String[] args) throws InterruptedException {test();}
}

程序运行结果为: 打开Chrome浏览器,3秒后进入B站,再经过3s后,关闭页面
在这里插入图片描述
如果正常运行说明你的环境搭建成功了.

感谢你的观看!希望这篇文章能帮到你!
专栏: 《软件测试》在不断更新中,欢迎订阅!
“愿与君共勉,携手共进!”

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/4508.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

奖牌数领跑是为何?解码长沙华中医卫科技中等职业学校的国防教育成功之道

近些年&#xff0c;越来越多的学生、家长、企业开始重新审视职业教育的价值。在产教融合的大背景下&#xff0c;职业教育已经成为了高新产业发展的人才引擎&#xff0c;职业教育的教学模式、软硬件配置乃至未来毕业生的就业情况&#xff0c;已完全变了模样。 实际上&#xff0…

Windows 组策略 部署打印机

一、服务端 1、打印机管理&#xff1a;添加打印机 2、选择打印机 3、第一次安装&#xff0c;选择这个 4、下载驱动&#xff0c;从磁盘安装 5、已成功安装 6、选中打印机右击属性&#xff1a;列出目录 7、创建一个组策略 8、组策略设置 用户设置 → 首选项 → 控制面板 → 打印…

shell脚本备份数据库

首先是在本地windows环境下尝试备份数据库 打开mysql的bin目录&#xff0c;然后在地址栏cmd&#xff0c;进入cmd界面&#xff0c;输入mysqldump命令&#xff0c;-u输入用户名&#xff0c;-p输入密码 还有数据库名称&#xff0c;以及后面要保存到的位置 mysqldump -uroot -p tes…

webpack插件compression-webpack-plugin

Vue配置compression-webpack-plugin实现Gzip压缩 1、为什么要压缩&#xff1f; 打包的时候开启gzip可以很大程度减少包的大小&#xff0c;页面大小可以变为原来的30%甚至更小&#xff0c;非常适合于上线部署。更小的体积对于用户体验来说就意味着更快的加载速度以及更好的用户…

Langchain-ChatGLM配置文件参数测试

1 已知可能影响对话效果的参数&#xff08;位于configs/model_config.py文件&#xff09;&#xff1a; # 文本分句长度 SENTENCE_SIZE 100# 匹配后单段上下文长度 CHUNK_SIZE 250 # 传入LLM的历史记录长度 LLM_HISTORY_LEN 3 # 知识库检索时返回的匹配内容条数 VECTO…

python web开发之WSGI/uwsgi/uWSGI详解

1. 三者的定义 WSGI是一种通信协议。uwsgi是一种传输协议。uWSGI是实现了uwsgi和WSGI两种协议的Web服务器。 2.三者的使用场景 WSGI&#xff0c;全称 Web Server Gateway Interface&#xff0c;是为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种简单而通用的接…

基于微信小程序的求职招聘系统设计与实现(Java+spring boot+MySQL+微信小程序)

获取源码或者论文请私信博主 演示视频&#xff1a; 基于微信小程序的求职招聘系统设计与实现&#xff08;Javaspring bootMySQL微信小程序&#xff09; 使用技术&#xff1a; 前端&#xff1a;html css javascript jQuery ajax thymeleaf 微信小程序 后端&#xff1a;Java s…

如何为SoC做ARM CPU适配——以裸核使用malloc为例

本文任务&#xff1a;为陌生的SoC平台编写基础软件&#xff0c;适配 malloc() 函数 0 如何为SoC做ARM CPU适配 今时不同往日&#xff0c;我们平时开发/娱乐接触到的消费级MCU/MPU基本山都是包含处理核与一系列外设的SoC。如果熟悉裸片开发&#xff0c;一定会在厂家提供的标准…

铁电材料极化高压放大器ATA-7025技术指标及使用说明

铁电材料是一类具有特殊电学性质的材料&#xff0c;在现代电子技术和器件中具有广泛的应用。铁电材料的极化是其重要的特征之一&#xff0c;极化测试是评估铁电材料性能的关键方法之一。一般铁电极化测试&#xff0c;是通过根据外电场施加的电压变化来观察材料产生的极化效应。…

结构型模式 - 组合模式

概述 对于这个图片肯定会非常熟悉&#xff0c;上图我们可以看做是一个文件系统&#xff0c;对于这样的结构我们称之为树形结构。在树形结构中可以通过调用某个方法来遍历整个树&#xff0c;当我们找到某个叶子节点后&#xff0c;就可以对叶子节点进行相关的操作。可以将这颗树理…

微信合并转发的图片如何批量保存

今天遇到一个场景&#xff1a;朋友给转发来了一个合并的聊天记录&#xff0c;里面是几十张图片&#xff0c;希望能打印出来。逐张保存太费手了。下面是批量保存图片的方法&#xff1a; 1、登录PC端微信&#xff1b; 2、将要保存图片的这条合并转发的聊天记录收藏&#xff1b;…

Camtasia Studio 2023怎么导出mp4格式的视频的详细教程介绍

很多用户刚接触Camtasia Studio 2023&#xff0c;不熟悉如何保存mp4格式的视频。在今天的文章中小编为大家带来了Camtasia Studio 2023保存为mp4格式的视频的详细教程介绍。 Camtasia Studio 2023保存为mp4格式的视频的详细教程 1、 打开Camtasia Studio。 Camtasia Studio- …

解决appium-doctor报ffmpeg cannot be found

一、下载ffmpeg安装包 https://ffmpeg.org/download.html 找到如图所示红框位置点击下载ffmpeg安装包。 二、配置ffmpeg环境变量 三、检查ffmpeg版本信息 重新管理员打开dos系统cmd命令提示符&#xff0c;输入ffmpeg查看是否出现版本信息&#xff0c;安装完好。 ffmpeg

短视频矩阵系统源码--开发实践

短视频矩阵系统源码开发技术&#xff1a; 1. 数据采集&#xff1a;使用Python的requests库进行数据爬取&#xff0c;使用Selenium模拟浏览器操作&#xff0c;解决抖音反爬虫机制。 2. 数据处理&#xff1a;使用Python的正则表达式、BeautifulSoup等库进行数据处理。 3. 关键…

使用Python和Scrapy实现抓取网站数据

Scrapy是一个功能强大的网络爬虫框架&#xff0c;允许开发者轻松地抓取和解析网站内容&#xff0c;这篇文章主要为大家介绍了如何使用Python的Scrapy库进行网站数据抓取&#xff0c;需要的可以参考一下 在本文中&#xff0c;我们将介绍如何使用Python的Scrapy库进行网站数据抓…

selenium-多窗口和frame处理

1.切换窗口 适用场景&#xff1a;点击按钮后&#xff0c;重新打开一个窗口&#xff0c;想要在新的窗口定位操作&#xff0c;就需要切换窗口 原理&#xff1a;获取窗口的唯一标识就是句柄&#xff0c;获取到句柄&#xff0c;就可以切换到对应的窗口了 处理方法&#xff1a; …

安达发|高级计划与智能排程APS软件的发展史进程

从泰勒的科学管理理论出发&#xff0c;率先追求科学的管理理论和管理工具&#xff0c;在计算机成为企业日常管理的基本工具之后&#xff0c;信息系统已经成为提高工厂管理水平的重要支柱。 在工厂计划领域&#xff0c;开始了从MRP到MRPII再到ERP的演变过程。MRPII指的是制造…

自动化测试工具比传统测试工具的优势体现在哪里?

随着软件行业的快速发展和扩张&#xff0c;自动化测试工具在提高测试效率和质量方面起到了不可或缺的作用&#xff0c;那你知道自动化测试工具比传统测试工具的优势体现在哪里吗&#xff1f; 首先&#xff0c;自动化测试工具能够大大缩短测试周期。相比于传统手动测试&#xff…

Spring AOP知识点详解

Spring AOP是 Spring最核心的能力&#xff0c;那到底什么是AOP呢&#xff0c;今天了不起带大家了解一下。 AOP是什么 AOP(Aspect Oriented Programming):面向切面编程&#xff0c;是OOP(面向对象编程)的一个延续&#xff0c;其和OOP一样&#xff0c;也是一种编程思想&#xff0…

大模型时代,腾讯云“复制”腾讯|WAIC2023

点击关注 文&#xff5c;郝鑫 编&#xff5c;刘雨琦 刚过去的WAIC&#xff08;世界人工智能大会&#xff09;俨然成为了大模型厂商的成果汇报大会。 百度文心大模型升级到3.5版本&#xff0c;训练速度提升2倍&#xff0c;推理速度提升30倍&#xff1b;华为云发布盘古大模型3…