软件测试/测试开发丨Selenium环境安装配置

news2024/11/25 18:42:16

一、selenium 环境配置

1、下载浏览器

目前比较常用的浏览器是 Google Chrome 浏览器,所以本教程以 chrome 为主,后面简介一下其他浏览器的环境配置。

chrome 下载: www.google.cn/chrome/

2、chromedriver 环境配置

chromedriver 是chromedriver提供的浏览器驱动程序,他的作用是将代码的请求转发给浏览器。

(1)chromedriver 下载

chromedriver 国内下载地址:chromedriver.storage.googleapis.com/index.html

在下载 chromedriver 的时候需要注意的是chromedriver 和 chrome 浏览器版本的对应关系

(2)chrome 浏览器版本查看:

查看chrome版本

这里的chrome 的版本是90.0.4430.212。在下载chromedriver 的时候就需要下载对应的版本。

chromedriver版本下载

这里使用的是90.0.4430.24(大版本对应也行即版本为90版本)

chromedriver下载

根据自己的系统选择chromedriver,windows 只有32位的,因为Windows 64为也支持运行32为的。点击下载保存并进行解压,记下chromedriver 的路径

chromedriver路径下载

(3)配置环境变量

在搜索界面打开编辑系统环境变量。

打开环境变量

配置环境变量

然后点击确定,保存即可。

3、验证

win + r 输入 cmd

打开cmd

在cmd里面输入 chromedriver --version

验证chromedriver

C:\Users\16478>chromedriver --version

ChromeDriver 90.0.4430.24 (4c6d850f087da467d926e8eddb76550aed655991-refs/branch-heads/4430@{#429})

二、安装 selenium 工具包

这里使用的是 python 的包管理工具 pip

pip install selenium

其他浏览器环境配置

其他环境与chrome浏览器的区别就在于 driver 的配置, 所以下载对应浏览器的driver即可

各浏览器的下载地址和对照表:

www.selenium.dev/documentati…

driver

配置 Selenium 

下载浏览器

下载浏览器驱动

Chrome

根据浏览器的版本号去下载对应的 chromedriver。

chromedriver与chrome的对应关系表:huilansame.github.io/huilansame.…

chrome版本与对应的谷歌驱动(chromedriver):www.cnblogs.com/yfacesclub/…

chromedriver:(chromedriver.storage.googleapis.com/index.html)
淘宝 chromedriver 镜像:(npm.taobao.org/mirrors/chr…)

Firefox

geckodriver:(github.com/mozilla/gec…)

image

根据使用的操作系统下载相应的 geckodriver。

安装 Selenium

安装到新建的 selenium 测试项目

pip install selenium

配置Chromedriver的环境变量

Mac

vim ~/.bash_profile
export PATH=$PATH:[chromedriver所在路径]

Windows

  • 在环境变量中配置

image

  • 重启命令行以及pycharm

  • 验证是否配置成功

image

Selenium Grid2

可以部署到有 docker 环境的电脑。
Selenium Standalone Server:(www.seleniumhq.org/download/)
Selenium Docker:github.com/SeleniumHQ/…)
此处链接只是参考,按照下面步骤操作。

安装 docker-compose

pip install docker-compose

新建 docker-compose.yml 文件

vim docker-compose.yml
# To execute this docker-compose yml file use `docker-compose -f <file_name> up`# Add the `-d` flag at the end for detached executionversion: "3"services:  selenium-hub:    image: selenium/hub:3.141.59-lithium    container_name: selenium-hub    environment:      - GRID_MAX_SESSION=10      # - newSessionWaitTimeout=25000      - JAVA_OPTS=-Xmx512m      # - SE_OPTS="-debug"    ports:      - "4444:4444"  chrome:    image: selenium/node-chrome-debug:3.141.59-lithium    volumes:      - /dev/shm:/dev/shm    depends_on:      - selenium-hub    environment:      - HUB_HOST=selenium-hub      - HUB_PORT=4444      - NODE_MAX_INSTANCES=10      - NODE_MAX_SESSION=10      - SCREEN_WIDTH=1366      - SCREEN_HEIGHT=768       - SCREEN_DEPTH=24    ports:      - "5900:5900"  firefox:    image: selenium/node-firefox-debug:3.141.59-lithium    volumes:      - /dev/shm:/dev/shm    depends_on:      - selenium-hub    environment:      - HUB_HOST=selenium-hub      - HUB_PORT=4444      - NODE_MAX_INSTANCES=10      - NODE_MAX_SESSION=10      - SCREEN_WIDTH=1366      - SCREEN_HEIGHT=768       - SCREEN_DEPTH=24    ports:      - "5901:5900"

启动

docker-compose up -d

访问

http://localhost:4444/grid/console

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

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

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

相关文章

搜索算法和推荐算法、广告算法的区别

广告和推荐算法的技术框架比较相似&#xff0c;在线计算时都分为召回&#xff08;candidates generating&#xff09;和排序&#xff08;candidates ranking&#xff09;两个阶段&#xff08;这似乎是计算资源有限条件下&#xff0c;所有检索问题的通用架构&#xff09;。 在某…

从a类到b类理解原型链

一.一个Student类 class Student {constructor(name, age) {this.name name;this.age age;}learn() {console.log("学习");}}let a1new Student(王德发,20)console.log(a1); 打印出来的结果: 二.extends继承 // 老师类class Teacher {constructor(name, age) {thi…

什么是uniapp?用uniapp开发好不好用?

随着移动应用市场的持续发展&#xff0c;开发者们面临着不断增长的需求和多样化的平台选择。在这个背景下&#xff0c;UniApp 应运而生&#xff0c;成为一种跨平台开发框架&#xff0c;为开发者提供了一种高效、简便的方式来开发移动应用程序。利用 UniApp 开发应用程序可以节省…

飞企互联-FE企业运营管理平台 登录绕过漏洞复现

0x01 产品简介 飞企互联-FE企业运营管理平台是一个基于云计算、智能化、大数据、物联网、移动互联网等技术支撑的云工作台。这个平台可以连接人、链接端、联通内外&#xff0c;支持企业B2B、C2B与O2O等核心需求&#xff0c;为不同行业客户的互联网转型提供支持。 0x02 漏洞概…

Android画布Canvas drawPath绘制跟随手指移动的圆,Kotlin

Android画布Canvas drawPath绘制跟随手指移动的圆&#xff0c;Kotlin import android.content.Context import android.graphics.Canvas import android.graphics.Color import android.graphics.Paint import android.graphics.Path import android.os.Bundle import android.…

快速实现图片重命名(统一命名或按数字顺序命名)

快速实现图片重命名&#xff08;统一命名或按数字顺序命名&#xff09; 有时候跑数据集需要图像的命名有规律&#xff0c;但储存时的命名可能是没有规律的。这时候手动一个个右键重命名&#xff0c;再进行修改过于耗时&#xff0c;这里给出简便的统一重命名方法。 按数字排序…

Linux驱动开发学习笔记6《蜂鸣器实验》

目录 一、蜂鸣器驱动原理 二、硬件原理分析 三、实验程序编写 1、 修改设备树文件 &#xff08;1&#xff09;添加pinctrl节点 &#xff08;2&#xff09;添加BEEP设备节点 &#xff08;3&#xff09;检查PIN 是否被其他外设使用 2、蜂鸣器驱动程序编写 3、编写测试AP…

LVM与磁盘配额

文章目录 LVM与磁盘配额一、LVM概述1、LVM概述2、LVM机制的基本概念2.1 PV&#xff08;Physical Volume&#xff0c;物理卷&#xff09;2.2 VG&#xff08;Logical Volume&#xff0c;逻辑卷&#xff09;2.3 LV&#xff08;Logical Volume&#xff0c;逻辑卷&#xff09; 二、L…

PayPal账户被封是因为什么?如何解决?

Paypal作为跨境出海玩家最常用的付款工具之一&#xff0c;同时也是最容易出现冻结封号现象。保障PP账号安全非常重要&#xff0c;只有支付渠道安全&#xff0c;才不会“白费力气”&#xff0c;那么最重要的就是要了解它的封号原因以做好规避。 一、Paypal账号被封原因 1、账号…

Anolis安装Jdk保姆级教学

前言 欢迎来到本博客&#xff0c;我们将带领你完成在Anolis操作系统上安装Java Development Kit&#xff08;JDK&#xff09;的详细过程。Anolis操作系统是一款基于Linux的轻量级操作系统&#xff0c;专为容器和云原生应用而设计。在Anolis上安装JDK将为你提供一个稳定、高效的…

释放资源的方式

为什么要学这个释放资源的方式&#xff1f; //5 关流outputStream.close();inputStream.close();原来这种方式&#xff0c;一般项目都会有很多代码&#xff0c;万一前面的代码有异常&#xff0c;就无法执行到这一步&#xff0c;绑定的系统资源就得不到释放&#xff0c;影响系统…

【Web】Ctfshow Thinkphp5 非强制路由RCE漏洞

目录 非强制路由RCE漏洞 web579 web604 web605 web606 web607-610 前面审了一些tp3的sql注入,终于到tp5了&#xff0c;要说tp5那最经典的还得是rce 下面介绍非强制路由RCE漏洞 非强制路由RCE漏洞原理 非强制路由相当于开了一个大口子&#xff0c;可以任意调用当前框…

CleanMyMac X 4.14.6中文版2024年最新必备的Mac系统清理工具

CleanMyMac X 4.14.6中文版是一款专业的Mac系统清理软件&#xff0c;可一键智能扫描清理mac系统日志缓存磁盘垃圾和多余语言安装包&#xff0c;快速释放电脑内存&#xff0c;轻松管理和升级Mac上的应用。同时CleanMyMac X 破解版可以强力卸载恶意软件&#xff0c;修复系统漏洞&…

Flink 输出至 Elasticsearch

【1】引入pom.xml依赖 <dependency><groupId>org.apache.flink</groupId><artifactId>flink-connector-elasticsearch6_2.12</artifactId><version>1.10.0</version> </dependency>【2】ES6 Scala代码&#xff0c;自动导入的…

数组形式的整数加法C语言❤

一、题目&#xff1a; 整数的 数组形式 是按照从左到右的顺序表示其数字的数组。num 例如&#xff0c;对于 &#xff0c;数组形式是 。num 1321[1,3,2,1] 给定 &#xff0c;整数的 数组形式 &#xff0c;和整数 &#xff0c;返回 整数 num k 的 数组形式 。numk 示例 1&…

猫咪吃哪种冻干最好?推荐新手养猫五款口碑最好主食冻干猫粮牌子

现在越来越多的铲屎官关注猫咪的食品选择&#xff0c;而冻干猫粮一直是热门话题。其中主食冻干的肉含量很高&#xff0c;富含猫咪成长所需的蛋白质、维生素等营养物质。而且冻干工艺还保留了食材的原始风味&#xff0c;复水后可以恢复鲜肉的口感&#xff0c;猫咪很喜欢吃&#…

用于IT管理的COBIT

随着世界的不断发展和变化&#xff0c;企业必须像冲浪者一样乘风破浪&#xff0c;适应社会不断更新的浪潮&#xff0c;拥抱新技术。信息技术&#xff08;IT&#xff09;已成为大多数企业运营的支柱&#xff0c;对战略决策、客户互动和整体效率都起了一定的影响作用。然而&#…

《Spring Cloud学习笔记:分布式事务Seata》

1.分布式事务理论基础 1.1.本地事务 本地事务&#xff0c;也就是传统的单机事务&#xff0c;在传统的数据库事务中&#xff0c;必须要满足ACID四个原则&#xff1a; 1.2.分布式事务 分布式事务&#xff0c;就是指不是在单个服务或单个数据库架构下产生的事务。 分布式事务是…

polar CTF上传

WEB-上传 一、查看题目信息 二、漏洞分析 经过上传测试发现&#xff0c;这题过滤掉了<?&#xff0c;这样正常的一句话木马就没法上传&#xff0c;这里可以用utf-16编码绕过。因为utf-16占utf-8的两倍长度&#xff0c;上传时默认检测为utf-8,从而就能绕过检测成功上传。 同…

BOM和DOM有什么区别和联系

BOM (Browser Object Model) 和 DOM (Document Object Model) 都是与 Web 开发相关的术语&#xff0c;它们分别代表了浏览器对象模型和文档对象模型。 BOM 是浏览器对象模型的缩写&#xff0c;它提供了一组用于操作浏览器窗口、浏览器历史记录、浏览器的位置等浏览器相关对象的…