UI自动化测试Selenium安装教程(1)

news/2025/3/9 20:28:09/

Selenium是广泛使用的web自动化测试工具。它使用的是Python语言,通过模拟用户在浏览器中的操作来测试web应用程序。Selenium提供了丰富的API接口,使得开发人员可以方便地编写自动化测试脚本。同时,Selenium还支持多种浏览器和操作系统,使得测试结果更加准确可靠。

Appium是一款移动应用自动化测试工具,支持iOS和Android平台上的原生、混合以及移动web应用。它使用的是JavaScript语言,通过模拟用户对移动应用的操作来进行测试。

UI自动化测试:模拟人工对web以及app页面进行操作的过程。

什么情况下适合UI自动化测试:

1、业务功能稳定,需求变更不频繁

2、回归测试的时候进行老功能的测试(不变的功能),测试脚本可以重复使用,适合进行UI自动化测试。

Selenium学习:

Selenium工作原理:

  • 工程师写的自动化测试代码:自动化测试代码发送请求给浏览器的驱动(比如火狐驱动、谷歌驱动)

  • 浏览器的驱动WEB Driver:它来解析这些自动化测试的代码,解析后把它们发送给浏览器

  • 浏览器:执行浏览器驱动发来的指令,并最终完成工程师想要的操作。

在mac上安装和配置selenium

1、安装python3.12

官网下载stable版本,无脑安装

参考:

得到python3的安装路径,打开终端(Terminal)中输入:which python3 /where python3

这里配置文件不成功???

有待解决

2 pip3 安装selenium

pip3 install selenium

3、安装chrome webdriver,

看到是自己的浏览器是 132.0.6834.160(正式版本) (arm64),但是后来运行py文件,告诉我下载134.XXX版本,就重新下载的134版本

环境:mac电脑:

把chromedriver放在/usr/local/bin目录下

解压下载的文件,把可执行文件放到/usr/local/bin目录

快捷键前往/usr/local/bin目录:打开Finder,然后command+shift+G

把可执行文件chromedriver拖进去

chromedriver -v查看是否安装成功

提示:无法打开“chromedriver”,因为无法验证开发者

1、进入chromedriver存放目录

cd /usr/local/bin/

2、添加信任

xattr -d com.apple.quarantine chromedriver

4、代码测试:

python代码测试
# encoding:utf-8

from selenium import webdriver

# 启动chrome浏览器

browser = webdriver.Chrome()
browser.get("https://www.baidu.com/")

如果能打开浏览器的百度就算成功。

参考:

Mac安装chromedriver_mac chromedriver 位置-CSDN博客

mac安装selenium-CSDN博客

5、pycharm安装:

https://zhuanlan.zhihu.com/p/403895291

x


http://www.ppmy.cn/news/1577896.html

相关文章

顶点着色器和片段着色器

在Unity渲染中,**顶点着色器(Vertex Shader)和片段着色器(Fragment Shader)**是图形渲染管线中的两个核心阶段。我们可以通过一个比喻来理解它们的分工:想象你要画一幅由三角形组成的3D模型,顶点…

大模型最新面试题系列:训练篇之训练稳定性

梯度爆炸的具体表现是什么?如何通过梯度裁剪解决? 具体表现: - 在训练过程中,损失函数突然急剧上升,不再收敛,甚至出现无穷大的情况。因为梯度爆炸会导致参数更新过大,使模型的输出变得不稳定&…

策略设计模式-下单

1、定义一个下单context类 通过这类来判断具体使用哪个实现类,可以通过一些枚举或者条件来判断 import com.alibaba.fastjson.JSON; import com.tc.common.exception.BusinessException; import com.tc.common.user.YjkUserDetails; import com.tc.institution.cons…

面试过了,总结测试工程师面试题(含答案)

普通二本计算机专业毕业,从毕业后,第一份接触测试的工作是在一家通讯小公司,大部分接触的工作是以功能测试为主,一直都是几千块钱工资,还一度被派出差,以及兼职各种产品、运维、运营的活,感觉自…

边缘智联新基建:5G+边缘计算重塑制造业神经末梢

一、制造业的"数据饥渴症"与旧架构的崩塌 2023年全球工业物联网设备数量已突破890亿台,但传统集中式云计算架构正面临三大致命瓶颈: 延迟黑洞:跨区域数据传输平均耗时达200ms以上,导致机器人协同、实时质检等场景无法满…

【贪心算法2】

力扣122.买卖股票最佳时机Ⅱ 链接: link 思路 要求最大利润,可以分解成子问题求解,在最低价格买入,最高价格卖出。 假如第0天价格最低,第3天价格最高,利润prices[3] - pricnes[0], 可以将利润公式拆解成 (prices[3]…

JavaWeb学习——Servlet介绍

Servlet 简介 什么是 Servlet Servlet 是一种服务器端的 Java 技术,设计用于扩展 Web 服务器或应用服务器的功能。Servlet 主要运行在服务器端,用来处理来自客户端的请求并生成响应。它们是 Java 技术中处理 HTTP 请求和响应的核心组件之一。 servlet…

一周热点-文本生成中的扩散模型- Mercury Coder

一、背景知识 在人工智能领域,文本生成模型一直是研究的热点。传统的大型语言模型多采用自回归架构,从左到右逐个预测下一个标记。这种模型虽然在生成连贯文本方面表现出色,但在速度上存在一定的局限性,因为它需要按顺序生成每个标…