Selenium 是一个免费、开源的自动化测试框架,可以对不同浏览器上的 Web 应用程序进行自动化测试。需要注意的是 Selenium 不支持 Desktop 应用程序 Mobile 移动应用程序的测试,如果需要测试这些可以使用 Appium 框架。
Selenium 概述
由于 Selenium 是一个开源工具,因此不涉及许可成本,这与其他测试工具相比是一个很大的优势。当然 Selenium 流行还有其他原因,比如:
- Selenium 测试脚本支持使用 Java、Python、C#、PHP、Ruby、Perl 和.Net 中的任何一种编程语言编写
- Selenium 测试可以在 Windows、Mac 或 Linux 中进行。
- Selenium 测试可以使用以下任何一种浏览器运行:Mozilla Firefox、Internet Explorer、Google Chrome 和 Safari 等。
- Selenium 测试用例可以跟 TestNG、JUnit 或者 PyTest 等测试框架集成,用于管理测试用例和生成报告。
- Selenium 可以非常方便的与 Maven、Jenkins 和 Docker 集成,实现持续测试。
Selenium WebDriver
WebDriver 自动化并控制 Web 浏览器执行的活动。它通常不依赖于 JavaScript,而是与浏览器通信以控制其操作。WebDriver 支持 Java、C#、Python、Ruby 等编程语言。不同类型的 WebDriver 有:
- FirefoxDriver
- InternetExplorerDriver
- ChromeDriver
- SafariDriver
- OperaDriver
- AndroidDriver
- IPhoneDriver
- HTMLUnitDriver
Selenium Grid
Selenium Grid 和 Selenium RC 一起被用来在多个浏览器之间执行并行测试。
安装
- JDK 的安装
- Eclipse 的安装与项目创建
- Chrome 安装及 Chrome 驱动的配置
- Selenium-4.4.0 的安装
- Junit4 的安装
本次课程使用 JDK 1.8,可以直接从 Oracle 官网上进行下载,在 Downloads 页面选择 JDK 8u371 版本进行下载,如下图所示:
JDK 1.8 安装
下载完成后双击会弹出安装界面,点击下一步即可,如下图所示:
选择安装的目录,并点击下一步
安装过程如下图所示:
安装过程中会弹出选择安装路径,使用默认路径即可,点击下一步
接着会出现安装进度
安装完成后,点击关闭即可
配置并验证 JDK 是否安装成功
安装完成后我们需要将 JDK 配置到环境变量中,打开系统环境变量设置,添加 JAVA_HOME 变量,点击确定;如下图所示:
接着需要添加一个 CLASSPATH 变量,如下图所示:
在系统环境变量中添加的两个变量如下图所示;点击确定保存环境变量即可。
接着打开 CMD 命令行窗口,输出 java -veresion
,即可查看安装的 JDK 的版本信息,如下图所示:
本课程中所使用到的 IDE 为 Eclipse,当然也可以使用其他的 IDE 如 IntelliJ IDEA 等,Eclipse 的安装包可以直接从官网进行下载;下载完成后直接解压并点击 EXE 文件即可启动 Eclipse,如下图所示:
第一次使用需要设置一个工作目录
启动完成后,界面如下图所示:
Eclipse 项目创建
点击 File-New-Project 创建一个项目
在弹出界面中选择 Java Project
输入项目名称信息,点击 Finish 即可完成创建
导入 Selenium JAR 包
可以从课程文件库中下载 Selenium Java 4.4.0 版本的 JAR 包并解压。
在 Eclipse 中选中项目并点击右键,选择 Build Path-Configure Build Path
在弹出的界面中选择 Java Build Path-Libraries,在右侧选择 Add External JARs
在弹出的 Windows 框中选择解压好的 selenium-java-4.4.0.jar 文件,确定即可
Eclipse 安装 Junit
Junit 是 Java 的一个单元测试框架,我们后面所有的代码都会通过 Junit 来完成测试,所以我们要先在 Eclipse 中安装 Junit。
首先打开从文件库中下载 junit-4.10.jar,之后打开项目,选中项目并在菜单栏中选择 Project->Properties->Java Build Path->Libraries->Add External JARS,找到从文件库中下载的 junit-4.10.jar 文件导入即可,过程如图所示:
选择下载好的 JAR 包:
查看导入的 JAR 包:
创建一个测试类,查看 @Test 能够正常导入:
至此,Junit 已经成功安装。
本次实验我们使用的是 Google Chrome V99 版本,因此可以从文件库中下载Chrome浏览器的安装包,下载之后直接双击安装即可,注意安装完成之后不要更新 Chrome 的版本。
Chrome Driver 的配置
在进行自动化测试时,我们是通过 Chrome Driver 来控制或者驱动浏览器进行各种指定的操作,因此必须要给浏览器配置相对应的驱动,上面已经安装了 Google Chrome 浏览器,这个版本浏览器对应的 Chrome Driver 可以从文件库中下载 chromedriver.exe,并且要将该驱动配置到系统环境变量中,步骤如下:
-
首先将下载的驱动放到一个用户目录下的 drivers 文件夹(如果没有可以自行创建)中。
-
接着打开系统属性,点击环境变量
-
选中系统变量中的 Path,点击编辑
-
然后点击新建,新创建一个环境变量
-
然后将 chromedriver.exe 存放的位置作为新的环境变量,点击确定即可。
-
最后我们可以在 CMD 命令行中输入
chromedriver
来验证环境变量是否配置成功:出现以上提示信息,就说明环境变量配置成功了。
其他版本的 Chrome 驱动安装
本课程推荐使用 Google Chrome V99 浏览器来进行自动化测试,如果你的 Google Chrome 浏览器是其他版本,那么也可以到这个网站去下载与你本地 Google Chrome 版本对应的驱动即可,浏览器的版本与驱动的版本是一一对应的。
其他浏览器的驱动安装
如果你使用的不是 Google Chrome 浏览器,那么就需要下载不同浏览器对应的驱动,包括我们在进行兼容性自动化测试时,也需要使用不同的浏览器来运行自动化测试用例,检查应用在不同浏览器下的兼容性。
各个不同浏览器的驱动可以参考如下地址:
GeckoDriver(Firefox):Releases · mozilla/geckodriver · GitHub
IEDriverServer(IE):http://selenium-release.storage.googleapis.com/index.html
OperaDriver(Opera):Releases · operasoftware/operachromiumdriver · GitHub
MicrosoftWebDriver(Edge):Tools | Microsoft Edge Developer
注意其他浏览器驱动下载后也需要安装同样的步骤配置系统环境变量。