一,Selenium 简介
在华为工作了10年的大佬出的Web自动化测试教程,华为现用技术教程!_哔哩哔哩_bilibili在华为工作了10年的大佬出的Web自动化测试教程,华为现用技术教程!共计16条视频,包括:1. 【web自动化】主流Web自动化测试技术对比、2. 【web自动化】Selenium自动化测试环境一键搭建、3. 【web自动化】Selenium八大定位策略详解等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1sM4y1d7tq/?spm_id_from=333.337.search-card.all.click
Selenium是目前最流行的web自动化测试工具,也常用于网络爬虫,已经更新到3以上的版本。
1,组件
它提供了以下web自动化测试组件:
-
Selenium IDE,Firefox浏览器的一个插件,提供简单的脚本录制、编辑与回放功能;
-
Selenium Remote Control (RC),是selenium 1 提供的组件,包含:Selenium Server(用于提供自动化测试服务)、Selenium Client(用于执行脚本);
-
Selenium Grid,用于对测试用例集做分布式处理(并行),现已集成到selenium server中;
-
WebDriver,Selenium2(包括Selenium3)抛弃了Selenium RC,而是使用WebDriver。相比Selenium RC,Webdriver 的API更容易理解和使用,可读性和可维护性也有较大提高。
因为后面我们的web自动化测试使用的是Selenium3(即WebDriver),这里对WebDriver做一下说明:
-
Webdriver不依赖于任何测试框架,除了必要的浏览器驱动,无需启动其他进程,也不必像Selenium 1那样需要先启动服务;
-
设计模式:按照Server-Client的经典设计模式设计;
-
Server端:可以是任意的浏览器,当脚本启动浏览器时,该浏览器就是Server,它的职责是处理Client发送的请求并做出响应;
-
Client端:即我们的测试代码,测试代码发送HTTP请求给Server(即浏览器),Server接受请求,执行相应操作并返回结果;
-
不同的浏览器,WebDriver需要依赖对应的浏览器驱动(如 chromedriver.exe)来转化浏览器的native调用,所以进行Selenium自动化时,需先下载对应的浏览器的驱动。
2,特点
-
免费开源的自动化测试工具(框架)
-
支持多平台:windows、linux、MAC
-
支持多种浏览器:Chrome、Firefox、IE、Safari、Opera
-
支持多种开发语言: java、ruby、python、C、C#等
-
支持分布式执行测试用例集,即可并行执行测试
不过多赘述,当你看到这篇博客的时候,相信你已经对selenium有了个大概的认知。接下来我们开始在windows 10 上搭建python+selenium环境。
二,Python+Selenium环境搭建
1、Web自动化测试环境搭建配置信息
1.Python: Python3.8.3
2.编辑器: pycharm-community-2020.1.2
3.Web自动化测试工具: Selenium 3.141.0
4.浏览器:Chrome 83.0.4103.97(正式版本)
5.Webdirver: Chrome 83.0.4103.39
6.操作系统:Win10 64位
以上仅为个人配置,仅供参考。
2、Python安装
Python下载地址:Download Python | Python.org
步骤1:点击Python->Dowdloads->Windows,截图如下:
步骤2:点击Python3.8.3,进入python3.8.3下载页面:
找到Python3.8.3版本所有安装包列表,如下:
安装包介绍:
步骤3:点击Windows x86-64 web-based installer下载,选择“另存为”保存到本地,如图:
由于web-based installer下载的仅仅是一个exe可执行程序,存放到本地联网后双击,程序会自动下载安装文件进行安装,因此该程序本身很小,只有1.3MB。
web-based installer存放到本地,如图:
步骤4:点击本地Windows x86-64 web-based installer安装包,展示安装界面,开始安装:
该安装界面介绍:
步骤5:进入“Optional Features”界面,该界面选择项默认全选,无需修改,直接点击【NEXT】:
步骤6:跳转到“Advanced Options”界面,如下:
修改安装目录,勾选适用所有用户,点击【Install】开始安装,如下:
程序安装进行中,Python下载比较慢,整个安装过程大概40分钟:
步骤7:安装成功,点击【Close】:
3、验证安装结果
输入一行代码,敲回车,代码正确运行,表示安装成功,如图:
方法二:开始菜单,输入cmd,打开CMD窗口,输入Python命令:
输入python --version,查看python版本信息;
输入where python,查看python安装目录:
如图,表示已经安装成功:
三,PyCharm安装
Python下载地址:PyCharm: the Python IDE for Professional Developers by JetBrains
PyCharm安装,配置及使用可参考:
第一步,打开官网界面,进入到下载界面
第二步,打开安装包,开始安装
第三步,选择安装路径
第四步,一些功能的选择
第五步,直接下一步,点击Install
第七步,完成
3、环境变量的配置
- 第一步、右击此电脑点击属性,点击高级系统设置,点击环境变量,打开Path新建
- 第二步、查看Pycharm路径
- 第三步、拷贝路径,完成环境变量的配置
四,Selenium安装
Selenium既可以在本地cmd窗口使用pip命令安装,也可以在PyCharm虚拟环境或者本地环境安装目录下通过命令行使用pip命令进行安装。以下演示在本地cmd窗口使用pip命令安装的方法,前提是联网状态。
4.1 安装Python后,开始菜单运行窗口输入cmd敲回车,弹出cmd窗口,输入命令“where pip”,查找pip安装路径,如图:
4.2 cmd窗口,cd命令进入pip安装路径“D:\Program Files\Python38\Scripts”后,输入“pip install -U selenium”,安装最新版本的selenium,如图:
4.3 安装等待中,当出现“Successfully installed selenium...”表示Selenium已经安装成功。selenium-xx表示版本号。如图:
4.4 验证Selenium安装是否成功:
1)进入python解释器,输入from selenium import webdriver,没有报错。
2)切换至pip安装路径,输入命令pip list,可查看selenium安装版本信息,如图:
五,Chrome浏览器安装
5.1 Chrome下载安装
Chrome浏览器下载地址:Google Chrome 网络浏览器
下载安装完成后,查看Chrome版本信息,如图:
Chrome浏览器版本信息:83.0.4103.97(正式版本)
5.2 Chrome禁止自动更新设置
Web自动化测试时,Chrome浏览器和驱动版本必须匹配,否则执行程序时会报版本不一致的错误。如Chrome浏览器自动更新,更新升级后Chrome驱动可能就不适用了,需要经常替换Chrome驱动,比较麻烦。我们可以禁止Chrome浏览器自动更新。
5.2.1 点击控制面板->系统和安全->管理工具,双击服务图标,打开服务界面,禁用Google 更新服务 (gupdate),Google 更新服务 (gupdatem)
首先选中Google 更新服务 (gupdate),右键点击【属性】弹出属性窗口,启动类型选择”禁用”,点击【确定】,启动类型已更新为禁用。如图:
同样步骤禁用Google 更新服务 (gupdatem),如图:
六,Chrome浏览器驱动下载及配置
6.1 Chrome浏览器驱动下载
由于Chrome服务器在国内访问不到,可以使用淘宝的NPM镜像网站下载Chrome浏览器驱动,选择与自己浏览器版本最相近的驱动进行下载。
淘宝的NPM镜像网站下载地址:https://npm.taobao.org/mirrors/chromedriver
电脑安装的Chrome版本为83.0.4103.97,下载与Chrome浏览器版本最相近的驱动版本83.0.4103.39,点击链接,如图:
进入驱动下载页面,windows只有一个驱动,不区分32位和64位,直接下载chromedriver_win32.zip即可,如图:
安装包下载到本地,解压缩,如图:
6.2 Chrome浏览器驱动配置
配置方案一:
下载Chrome浏览器驱动,在本地解压缩后,将Chrome浏览器驱动存放目录配置到环境变量中。点击控制面板->系统和安全->系统->高级系统设置->环境变量,选中path变量,点击【编辑】按钮,进入编辑环境变量页面,如图:
点击【新建】按钮,将Chromedriver.exe存放路径拷贝进去,点击【确定】按钮,返回后点击【确定】,如图:
配置方案二:
下载Chrome浏览器驱动,在本地解压缩后,将Chrome浏览器驱动chromedriver.exe存放到与python.exe同一层级目录下,如图:
两种方式区别:两种配置方案选择其一即可,如果电脑下只安装了一个版本的Python,两种方法没有什么区别。但是如果电脑安装了多个版本的Python,采用方案二的方式,每个版本的Python安装目录下均要存放一个相应浏览器的驱动如chromedriver.exe,但采用方案一的方式配置,多个版本的Python不需要重新配置环境变量,均能根据环境变量的配置找到浏览器驱动程序,如本教程中的chromedriver.exe。
七,Wed自动化程序创建
前提:Chromedriver驱动采用在环境变量中配置的方法。
7.1 打开PyCharm,点击【Create New Project】,如图:
7.2 进入“New Project”页面,修改项目名称为“LearnPython”,勾选Existing interpreter(本地系统的解释器),点击“...”,选择本地的python.exe所在目录,添加,如图:
备注:PyCharm有一套虚拟环境和本地环境,两套环境的库相互独立,互不干扰。步骤四Selenium的安装是在本地环境cmd下安装的,因此创建项目时选择Existing interpreter。虚拟环境的库需要在PyCharm虚拟环境安装目录下用cmd命令行使用pip安装第三方库(Terminal界面)。
7.3 项目创建成功,点击项目“LearnPython”,右键选择“New”->“Python Flie”,录入文件名day20200609,双击Python Flie,创建成功,如图:
7.4 写一段自动化代码,点击【Run】->【Run】,测试程序,如图:
7.5 程序正常运行,后台无报错,如图:
前台页面跳转正常,如图:
web自动化环境搭建成功。