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

一、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 --versionChromeDriver 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.hqwc.cn/news/308213.html

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

相关文章

私有部署ELK,搭建自己的日志中心(五)-- 使用filebeat采集K8S pod的jvm日志

一、背景 前文采集的日志是来源于虚拟机&#xff0c;在云原生下的容器化部署时&#xff0c;需要采集Pod里的jvm日志。 二、术语 1、临时存储emptyDir emptyDir在Pod被分配到Node时创建的&#xff0c;它的初始内容为空&#xff0c;并且无须指定宿主机上对应的目录文件&#…

02.Git远程仓库

一、常用的托管服务 1.gitHub 一个面向开源及私有软件项目的托管平台&#xff0c;只支持Git作为唯一的版本库格式进行托管。 2.码云(gitee) 是国内的一个代码托管平台&#xff0c;服务器在国内&#xff0c;所有相较于gitHub使用起来更加方便一点。 3.gitLab 是一个用于仓库管…

【hyperledger-fabric】将智能合约部署到通道

简介 本文主要来自于B站视频教学视频&#xff0c;也主要参看了官方文档中下图这一章节。针对自己开发的代码做出相应的总结。 1.启动网络 # 跳转到指定的目录 cd /root/fabric/fabric-samples/test-network# 启动docker容器并且创建通道 ./network.sh up createChannel2.打…

探索 Node.js 与 C++ 的绑定:使用 node-addon-api

在 Node.js 中使用 C 进行绑定是一种强大的方式&#xff0c;可以充分利用 C 的性能优势。在本文中&#xff0c;我们将探讨如何使用 node-addon-api 来实现这一目标。 1. 为什么选择 C 绑定&#xff1f; Node.js 是一个基于 JavaScript 的平台&#xff0c;它使得开发人员能够使…

Leetcode 746 使用最小花费爬楼梯

题意理解&#xff1a; 给你一个整数数组 cost &#xff0c;其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。 一旦你支付此费用&#xff0c;即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯 目标&#xff1a;使用最小的花…

2020年认证杯SPSSPRO杯数学建模A题(第一阶段)听音辨位全过程文档及程序

2020年认证杯SPSSPRO杯数学建模 A题 听音辨位 原题再现&#xff1a; 把若干 (⩾ 1) 支同样型号的麦克风固定安装在一个刚性的枝形架子上 (架子下面带万向轮&#xff0c;在平地上可以被水平推动或旋转&#xff0c;但不会歪斜)&#xff0c;这样的设备称为一个麦克风树。不同的麦…

Android MVP 写法

前言 Model&#xff1a;负责数据逻辑 View&#xff1a;负责视图逻辑 Presenter&#xff1a;负责业务逻辑 持有关系&#xff1a; 1、View 持有 Presenter 2、Model 持有 Presenter 3、Presenter 持有 View 4、Presenter 持有 Model 辅助工具&#xff1a;ViewBinding 执行…

PostgreSQL PG的流复制搭建

注: 本文为云贝教育 刘峰 原创&#xff0c;请尊重知识产权&#xff0c;转发请注明出处&#xff0c;不接受任何抄袭、演绎和未经注明出处的转载。【PostgreSQL】PG的流复制搭建 - 课程体系 - 云贝教育https://www.yunbee.net/Home/News/detail/article_id/510.html 一 、主备机…

TCP/IP的网络层(即IP层)之IP地址和网络掩码,在视频监控系统中的配置和应用

在给客户讲解我们的AS-V1000视频监控平台的时候&#xff0c;有的客户经常会配置错误IP地址的掩码和网关&#xff0c;导致出现一些网路问题。而在视频监控系统中&#xff0c;IP地址和子网掩码是用于标识网络中设备的重要标识符。IP地址被用来唯一地标识一个网络设备&#xff0c;…

kafka实现延迟消息

背景 我们知道消息中间件mq是支持延迟消息的发送功能的&#xff0c;但是kafka不支持这种直接的用法&#xff0c;所以我们需要独立实现这个功能&#xff0c;以下是在kafka中实现消息延时投递功能的一种方案 kafka实现延时消息 主要的思路是增加一个检测服务&#xff0c;这个检…

杰发科技AC7840——EEPROM初探

0.序 7840和7801的模拟EEPROM使用不太一样 1.现象 按照官方Demo&#xff0c;在这样的配置下&#xff0c;我们看到存储是这样的&#xff08;连续三个数字1 2 3&#xff09;。 使用串口工具的多帧发送功能 看不出多少规律 修改代码后 发现如下规律&#xff1a; 前四个字节是…

github鉴权失败

问题&#xff1a; 如上图所示 git push 时发生了报错&#xff0c;鉴权失败&#xff1b; 解决方案 Settings->Developer settings->Personal access tokens->Generate new token。创建新的访问密钥&#xff0c;勾选repo栏&#xff0c;选择有效期&#xff0c;为密钥命…