Python实现Web UI自动化测试实战:Selenium 3/4+unittest/Pytest+GitLab+Jenkins
上QQ阅读APP看书,第一时间看更新

1.3 Selenium IDE

如果你想快速创建一个缺陷回归测试,或者创建自动化测试脚本来进行探索测试,那么你就可以使用Selenium IDE,它可以简单地记录和回放与浏览器的交互行为。

Selenium IDE分别提供了Firefox和Chrome两种浏览器的插件,这里我们以Firefox的插件为例,讲解一下插件安装、脚本录制的过程。

对于Selenium IDE存在的价值,笔者是这样理解的:因为IDE很难满足自动化测试的复杂场景,所以借助IDE来完成整个项目的自动化测试很不现实;但是IDE录制完成后,可以查看、导出测试脚本,这有助于我们了解官方推荐的脚本编写思路,为后续我们编写测试脚本提供指导。遗憾的是,官方IDE在3.0后的版本中不再提供脚本导出的功能。因此,我们还会介绍另外一款非官方插件——Katalon Recorder,该插件能够提供脚本导出功能。

1.3.1 Selenium Firefox IDE

本小节我们简单了解Selenium Firefox IDE的安装、脚本录制等相关过程。

(1)安装Firefox IDE

●打开Firefox浏览器,访问Selenium官网。

●单击Selenium IDE下方的“DOWNLOAD”按钮,进入下载页面,如图1-5所示。

图1-5 Selenium官网首页

●单击“+Add to Firefox”按钮,开始安装插件,如图1-6所示。

●安装过程中,会弹出图1-7所示的提示框。此时,单击“添加(A)”按钮。

●浏览器右上角出现提示框,提示Selenium IDE已经被添加到Firefox浏览器,并且我们可以选择Firefox浏览器菜单中的“附加组件”选项来管理相关插件,如图1-8所示。

(2)Selenium IDE录制

●单击插件图标,打开图1-9所示的对话框。

图1-6 安装插件

图1-7 添加提示框

图1-8 安装完成

●根据实际需要选择在新项目中录制新测试或打开一个已存在的项目等。这里,我们单击第一项“Record a new test in a new project”。

●在弹出的对话框中输入项目名称,然后单击“OK”按钮,如图1-10所示。

●在开始录制之前,先要输入起始的URL(这里我们输入了百度的URL),然后单击“START RECORDING”按钮,如图1-11所示。

图1-9 Selenium IDE弹出的对话框

图1-10 输入项目名称

图1-11 输入URL

●这时候,会打开一个Firefox浏览器并访问上一步骤中输入的URL(在浏览器的右下方会显示“Selenium IDE is recording”),如图1-12所示。

●然后我们对浏览器所做的所有操作都会被录制下来,这里我们做3个动作:在百度搜索框中输入关键字“Storm”,单击“百度一下”按钮,关闭浏览器。

●在IDE窗口中单击右上角的“Stop recording”按钮,结束录制,如图1-13所示。

图1-12 访问URL

图1-13 IDE窗口

●输入该测试脚本(用例)的名字,这里输入“test1”,然后单击“OK”按钮,如图1-14所示。

●单击图1-15中的三角按钮,可以回放录制的动作。

图1-14 输入测试用例名字

图1-15 回放功能

前面我们说过Selenium IDE的重点在于其脚本导出功能,不过官方新版本IDE不再提供脚本导出功能,因此我们将不会再花更多的篇幅来介绍此功能。如果读者有兴趣的话,可以自行研究(整个IDE的操作都相对比较简单)。

1.3.2 Katalon Recorder插件

接下来,我们安装并使用Katalon Recorder插件,重点看一下官方推荐的测试脚本编写风格和思路。

(1)安装Katalon Recorder插件

●打开Firefox浏览器,然后打开菜单,选择“附加组件”,再搜索“Katalon Recorder”,最后选择图1-16所示的搜索结果。

图1-16 Katalon Recorder插件

●单击“添加到Firefox”按钮,完成插件的安装,如图1-17所示。

图1-17 添加插件

(2)使用Katalon Recorder插件

●打开Firefox浏览器,单击菜单栏中的“Katalon Recorder”图标,打开Katalon Recorder窗口,如图1-18所示。

●单击“Record”按钮即可开始录制,这里我们还是做3个操作:打开百度首页,在搜索框中输入“Storm”,单击“百度一下”按钮。录制结果如图1-19所示。

图1-18 Katalon Recorder窗口

图1-19 录制结果

(3)Katalon Recorder导出脚本

●单击“Export”按钮,可以选择导出脚本的语言,如图1-20所示。

●这里我们选择“Python 2(WebDriver+unittest)”,如图1-21所示。

图1-20 导出脚本

图1-21 脚本示例

最后再强调一下,IDE所能提供的脚本功能实在有限,我们学习它的目的,是了解其脚本编写风格,再无其他。

注意▶ Katalon Recorder插件不支持导出Python 3版本格式脚本。Python 2和Python 3在语法上有部分差异,不过我们还是可以参考脚本的unittest框架风格。在本书第10章中,我们将详细讲解基于Python使用Selenium、unittest编写脚本的过程。