1、RobotFramework
RobotFramework 的架构是一个通用型的验收测试和验收测试驱动开发的自动化测试框架(ATDD)。它 具有易于使用的表格来组织测试过程和测试数据。
2、RobotFramework 特点:
l 使用简单
l 非常丰富的库
l 可以像编程一样写测试用例
l 支持开发系统关键
3、环境搭建
Python 2.7
Robot Framework-2.8.5
Robot Framework-RIDE-1.5.2.1 (测试用例的创建、运行可以在图形界面下完成)
wxPython-2.8 (Python 的一个GUI 库,支撑Ride的运行)
Selenium2library (selenium2测试库,基于webdriver驱动)
ChromeDriver (浏览器驱动,这里以谷歌浏览器为例)
1.python版本是2.7
由于Robot Framework 框架是基于Python 语言开发的,因此必须安装Python环境,目前支持python3,之所以选择Python2版本,是因为目前robotframework-ride版本最新的是1.5.2.1,还不支持python3.6.3
官网:https://www.python.org/downloads/
2.Robot framework的安装
作用:web自动化测试框架。(我装的最新的3.0.4版本)
命令安装:python2 -m pip install robotframework
3.Robot framework-ride 1.5.2.1
作用:RIDE就是一个图形界面的用于创建、组织、运行测试的软件。
robotframework-ride是基于wxPython的
python2 -m pip install robotframework-ride
4.安装wxPython 2.8.12.1
作用:Wxpython 是python 非常有名的一个GUI库,因为RIDE 是基于这个库开发的。(我装的4.0.3)
用命令安装失败python2 -m pip install wxPython;所以从官网下载安装的,直接下一步到完成。下载地址:
https://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/wxPython2.8-win64-unicode-2.8.12.1-py27.exe/download
5.安装扩展包selenium2library
作用:selenium2library是基于Webdriver封装的RF web测试库。
RF-seleniumlibrary 可以看做RF版的selenium 库,selenium (webdriver)可以认为是一套基于web的规范(API),所 以,RF 、appium 等测试工具都可以基于这套API进行页面的定位与操作。
1)首先安装selenium-2.53.1
python2 -m pip install selenium==2.53.1
2)其次安装decorator-4.0.11
python2 -m pip install decorator-4.0.11
3)最后安装robotframework-selenium2library 3.0.0
python2 -m pip install robotframework-selenium2library 3.0.0
python2 -m pip install robotframework-selenium2library=1.8.0
我装的3.0.0
6.下载浏览器驱动
D:\python2放在该目录下,我的是chrome驱动。
最后是环境安装的以下内容:
4、遇到的问题总结:
1.Python2.7和3.6版本兼容:
1)两个版本的安装地址
Python2安装地址:D:\python2\Scripts
Python3的地址:C:\Users\12978\AppData\Local\Programs\Python\Python36-32
2)环境变量:
打开,控制面板\系统和安全\系统,选择高级系统设置,环境变量,选择Path,点击编辑,新建,分别添加D:\Python\python27和D:\Python\python27\Scripts到环境变量。
注意:python3安装时可以选择自动添加到系统环境变量,如未选择,方法和python2添加过程相同。
3)pip:
我删除了python2的pip.exe和pip2.7.exe,修改了python2.7中python.exe的名称修改为为python2.exe;python3未动;
然后运行cmd命令,输入python2即可运行python2.7.15版本,输入python即可运行python3.5.2版本。
当python2需要pip时运行:python2 -m pip install xxx;
当python3需要pip时运行:python pip install xxx;
4)查看路径
查看python路径:where python
查看pip路径:where pip 或者where pip2
2.Selenium2Library库导入时标红代表没导入失败,灰色代表成功,
1)用pip2 list命令查看版本是否兼容;
导入library库时标红,切换到1.8版本之后还是不行,又装回了3.0,重启ride后好了
2)导入库不是在文件上,而是在目录上;
3.打开ride.py文件的方法:
1)首先找到ride.py的安装目录,我的是:D:\python2\Scripts;win+R命令打开cmd命令,输入D: 切换到D盘下,输入>cd python2 回车,>cd scripts 回车,>python2 ride.py回车,启动ride;如下图:
2)从D:\python2\Scripts安装目录中找到ride.py文件,发送桌面快捷方式;然后右击属性,目标更改D:\python2\pythonw.exe -c "from robotide import main; main()"(python27的主程序名称是什么,命令里就写什么),启动ride.py;
4.报错:UnicodeDecodeError :‘utf-8‘ codec can‘t decode byte 0xb2 in position 244:invalid
报错utf8编码不能在233位字节0xb2解码:无效
方法:打开D:\python2\Lib\site-packages\robotide\contrib\testrunner文件夹下的testrunner.py文件打开,修改400行把“UTF-8”换成”GBK”,然后删除testrunner.pyc文件。
5.如图:运行程序运行RIDE时,脚本默认读取的是Python36路径下的依赖库文件
1)将Python3下的RobotFramework全部卸载掉,重新运行RIDE,如果还报错就操作步骤2;
2)找到python2安装目录下D:\python2\Scripts的pybot.bat文件,将打开后显示:python -m robot.run %*修改为python2 -m robot.run %*;
6.浏览器驱动,你用的哪个浏览器驱动,后边就填写浏览器名称