RobotFramework + Python 自动化入门 三 (Web自动化)
在《RobotFramwork + Python 自动化入门 一》中,完成了一个Robot环境搭建及测试脚本的创建和执行。
在《RobotFramwork + Python 自动化入门 二》中,对RobotFramework的关键字使用和查看源码进行了介绍。
本节,介绍基于Web的RF自动化。
一、环境配置
1. 下载浏览器驱动程序
执行web端的测试脚本时,需要浏览器驱动,不同浏览器对应不同的驱动程序。
浏览器的驱动版本 要和 浏览器版本号对应或适配。
Chrome driver下载地址:http://npm.taobao.org/mirrors/chromedriver/
或百度搜索其他下载方式。
我的Chrome版本号为91.0.4472.106, 故下载最接近的chromedriver。
下载完成后放入Python安装目录(或者其他文件夹,但该文件夹要加入path路径)。
2.安装selenium库
安装命令(安装最新版): pip install robotframework-seleniumlibrary
指定版本号安装:pip install robotframework-seleniumlibrary==3.3.1
3. 添加依赖库
在RF项目中添加selenium library。
方法一:
双击打开red.xml文件,点击+按钮添加library。
选择Python安装目录下的 \Lib\site-packages\SeleniumLibrary 文件夹中的__init__.py文件。
选择第一个SeleniumLibrary,点击OK。
SeleniumLibrary添加成功。
点击保存按钮或 CTRL+S 快捷键。
Project目录下多了一个Robot Referenced libraries目录,SeleniumLibrary是其子目录,所有添加的第三方依赖都在这个目录下。
方法二:
右键 red.xml文件,点击Open With>Text Editor,以文本格式打开red.xml文件。
在red.xml文件中添加下方内容,保存:
<referencedLibrary type="PYTHON" name="SeleniumLibrary" path="D:/Program Files/Python39/Lib/site-packages/SeleniumLibrary"/>
4. 编码格式设置
在写中文环境的测试脚本时,经常会用到中文,故要设置编码格式为UTF-8。
如果不设置,当脚本中存在中文,执行脚本(robot文件)会报错。
而且若只设置了单个项目的编码格式为UTF-8,在console界面会发现中文字符仍显示为乱码,故要设置整个workspace的编码格式。
设置方法:
菜单栏Window > Preferences > General > Workspace。
二、设计测试脚本
1. 引入SeleniumLibrary
当使用第三方库时,必须在文件中使用Library关键字 引入相应的库名。
2. 设计测试脚本
测试脚本流程如下:
1.打开谷歌浏览器,进入百度页面
2.搜索框中输入selenium
3.点击搜索按钮
4.页面搜索结果标题应包含selenium
5.关闭浏览器
测试脚本:
Baidu Search - Selenium Open Browser http://www.baidu.com chrome # chrome表示启动谷歌浏览器 Wait Until Element Is Visible css=#kw # css=#kw是搜索框的locator,css表示locator使用的是css定位方式 Input Text css=#kw selenium # css=#kw是输入框的locator Click Button css=#su Sleep 3 Element Text Should Be xpath=//h3[@class='t c-gap-bottom-small']/a/em selenium #xpath=//h3[@class='t c-gap-bottom-small']/a/em 是xpath格式的locator Close Browser
Locator " xpath=//h3[@class='t c-gap-bottom-small']/a/em" 的含义如下:
3. 执行脚本
选择脚本文件,右键执行,或者直接点击工具栏”执行‘按钮。
执行结果如下: