Selenium3自动化测试实战--第2章 测试环境搭建--安装Python,Selenium,浏览器驱动

2.1 安装Python

官网:www.python.org

因为我使用的是Windows,所以直接下载,然后安装就好。现在最新版本是Python3.11.0。

但我的电脑之前安装过Python

重新安装最新的Python3.11.0,发现最新的无法安装,系统太旧。

后来发现其它稳定的版本(Stable),均不能在Win7上使用,也不想装不稳定的。只能先用着Python3.8.10。

如果系统允许安装最新的Python,那么可以先卸载旧Python,再安装新的。安装Python过程中,记得勾选 Add Python to PATH。安装完成后,查看PATH中旧Python的,是不是已经被删除。

2.2 安装Selenium

书上讲的是使用Python集成的pip来安装,更新,查看,卸载。但我使用pip不成功

想到现在是在Python shell模式,那退出后,在cmd试一试,竟成功了

Pip命令如下:

pip install selenium==3.11.0    # 安装指定版本

pip install -U selenium    #安装最新版本

pip show selenium       #查看当前包的版本信息,如上

pip uninstall selenium    #卸载

2.3 第一个selenium自动化测试脚本

test_baidu.py (自动化测试脚本,以test_开头较好?)

from selenium import webdriver  # 导入webdriver模块

driver = webdriver.Chrome()  # 调用webdriver模块下的Chrome()类(注意大小写),赋值给变量driver
driver.get("https://www.baidu.com")  # 调用Chrome()类提供的get()方法访问百度首页

driver.find_element_by_id("kw").send_keys("selenium")  # 定位元素,通过send_keys()做输入
driver.find_element_by_id("su").click()  # 通过click()单击操作

driver.quit()  # 关门浏览器

 通过最简单的Python IDLE编辑脚本,然后F5执行,也报错,但与书中错误不一样,因为我之前电脑中安装过ChromeDriver浏览器驱动器,所以错误是 ChromeDriver因为与Chrome浏览器的版本不匹配。

2.4 浏览器驱动

各浏览器驱动下载地址如下:

GeckoDriver (Firefox): https://github.com/mozilla/geckodriver/releases

ChromeDriver (Chrome): https://sites.google.com/a/chromium.org/chromedriver/home

IEDriverServer (IE): http://selenium-release.storage.googleapis.com/index.html

OperaDriver (Opera): https://github.com/operasoftware/operachromiumdriver/releases

MicrosoftWebDriver (Edge): https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver

下载的驱动,放在自己创建的文件夹下,将目录添加到系统变量的Path中。

ChromeDriver无法连接到google,可以从淘宝的镜像网站下载。https://npm.taobao.org/mirrors/chromedriver/  现在网址跳转到非taobao了。

test_baidu.py脚本执行的报错,可以想到,Chrome浏览器,在升级到合适的要测试的版本后,关闭掉自动更新。打开msconfig,将2个google更新禁用。

现在Chrome已经是最新的,但ChromeDriver没有对应的最新版本,也不知道能不能匹配。试一试

下载了最新的ChromeDriver。忘记以前Python安装在哪里了,可以cmd中输入where python

然后将下载的ChromeDriver放到这个目录下

如果这时无法替换,或删除,需要关机电脑,重新打开。就可以删除了,然后换上新下载的ChromeDriver,执行第1个脚本test_baidu.py,成功!可见驱动版本号不一定与浏览器版本号一模一样,只要大版本号一样应该就差不多。

大功告成,Over.

posted @ 2022-10-30 23:49  间歇性努力  阅读(297)  评论(0)    收藏  举报