赞
踩
本期导航:了解自动化测试、web自动化、selenium工具,掌握基于python+selenium+浏览器的基础配置,完成一个简单的自动化测试
目录
自动化测试的定义:把以人为驱动的测试行为转化为机器执行的过程。
关键点:程序测试程序、代码代替思维、脚本代替人工
作用:节约资源、提高效率、提高测试覆盖率
Selenium是一个用于Web应用程序测试的工具;中文的意思(硒)。
特点:
Selenium WebDriver 原理示意图:
Selenium自动化测试人员可以使用Java、Ruby、Python、C#等语言,利用它们提供的库来编写脚本。
JSON Wire Protocol是在HTTP服务器之间传输信息的REST风格的API。每个浏览器驱动程序(如FirefoxDriver、ChromeDriver等)都有它们各自的HTTP服务器。
不同的浏览器都包含一个单独的浏览器驱动程序。浏览器驱动程序与相应的浏览器通信。当浏览器驱动程序接收到任何指令时,将在相应的浏览器中执行,响应信息将以HTTP的形式返回。
Selenium支持多种浏览器,如Firefox、Chrome、IE、Safari等。
所需工具:
selenium 安装、卸载、查看命令:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium
其他镜像推荐:
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/
pip uninstall selenium
WebDriver下载地址:
官方列表:
国内镜像(推荐):
EdgeWebDriver:
Microsoft Edge WebDriver | Microsoft Edge Developer
ChromeWebDriver:
FireFoxWebDriver:
直接在cmd的命令行窗口下使用命令,或者在python终端下使用命令,以下演示为后者:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium
输入pip list 可以查看已经导入的包,这里显示导入了4.15.2版本的selenium:
通过上面介绍可以知道在写Web自动化的过程中,如果使用微软的Edge浏览器,需要加载相应的浏览器驱动,才可以执行Selenium基于Edge浏览器的自动化测试。
首先我们先查看浏览器版本,点击设置后点击最后一栏关于Edge,右上方关于下面可以看到版本号,这里为119.0 .2151.97(正式版本)(64 位)。
然后进入上面给出的地址选择适合版本的 WebDriver,上面准备工具中也给出了Chrome、FireFox的 WebDriver下载地址,其他浏览器的驱动小伙伴们可以自行下载。
EdgeWebDriver:
Microsoft Edge WebDriver | Microsoft Edge Developer
点击进去,查找对应版本下载即可:
下载完成并解压缩后,将其中的msedgedriver.exe
文件放入到python的安装路径下。
或者放在任意目录下,配置一下高级系统设置中的环境变量中的系统变量,在其中新增我们放置解压文件msedgedriver.exe
的目录,并保存。这里操作图示如下:
python文件测试代码如下:
- from selenium import webdriver
- from time import sleep
-
- # 创建WebDriver对象
- # 如果把驱动放置到了 系统环境变量目录中,可不带参数创建
- driver = webdriver.Edge()
- # 如果没有放置到系统环境变量目录中,需要通过参数指定
- # driver= webdriver.Chrome(executable_path="./msedgedriver.exe")
- url = 'https://www.baidu.com'
- # 使用浏览器打开指定页面
- driver.get(url)
- sleep(10)
- # 关闭浏览器
- driver.quit()
运行后自动打开百度,并停留10秒后关闭,测试通过,则表示配置成功。
TypeError: 'module' object is not callable
解决方法:driver = webdriver.edge()语句中.后面的字母要大写,应为.Edge()。
备注:由于一些浏览器有默认自动更新的设置,后续使用中可能会导致版本不一致,从而引发问题,建议关闭自启动。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。