python robotframework环境搭建
1、环境搭建需要的安装包:(python3)python2用pip
pip3 install requests
pip3 install robotframework
pip3 install robotframework-ride
pip3 install robotframework-seleniumlibrary
pip3 install robotframework-selenium2library
pip3 install selenium
ride:
由于现在ride没有正式版支持python3的,所以在网上找到了开发板的
https://github.com/HelioGuilherme66/RIDE/archive/python3.zip
PS:这个python3版本的ride据说不太稳定
解压文件夹,使用命令行工具进入目录,找到setup.py文件,执行
python setup.py setup
2、IntelliBot pycharm开发插件【语法高亮】
pycharm>File>setting>Plugins>Browse reponsitories
3、pycharm配置执行器
File>setting>Tools>External tool,配置完成后即可在.robot文件中选择使用该执行器执行
Parameters:当前文件路径
Working directory:工作路径,日志、结果输出等,如下:
注:log.html 执行日志
output.xml 执行相关信息的xml,可用于后续二次解析
report.xml 执行结果报表
4.fireFox浏览器及对应驱动
(1)浏览器:firefox官网下载即可
(2)驱动:geckodriver-v0.19.1-win64.zip
解压(geckodriver.exe)拷贝至python安装目录
其实跟selenium安装一模一样
5、问题调试
(1)wxPython版本太新:
C:\Python27\python.exe C:/Python27/Scripts/ride.py
Please be aware of untested wxPython installation
RIDE officially supports wxPython 2.8.12.1 and 3.0.2.
Your current version is 4.0.4.
There are significant changes in newer wxPython versions. Notice that RIDE is still under development for wxPython 3.0.3 and newer (wxPython-Phoenix).
命令行下载不到这个旧版,在网上找到wxPython2.8-win64-unicode-2.8.12.1-py27.exe安装即可
(2)执行ride.py失败需要重装:(2和3都差不多,需要在这个文件夹内删掉这个文件)
pip3 uninstall robotframework
Cannot uninstall ‘robotframework’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
在这个文件夹中删除这个文件
然后重新执行删除命令
pip uninstall robotframework
Uninstalling robotframework-3.1.1:
Would remove:
c:\programdata\anaconda3\lib\site-packages\robotframework-3.1.1-py3.6.egg
c:\programdata\anaconda3\scripts\rebot-script.py
c:\programdata\anaconda3\scripts\rebot.exe
c:\programdata\anaconda3\scripts\robot-script.py
c:\programdata\anaconda3\scripts\robot.exe
Proceed (y/n)? y
Successfully uninstalled robotframework-3.1.1
(3)使用Robot Framework进行自动化测试,运行时遇到
UnicodeDecodeError :‘utf-8’ codec can’t decode byte 0xd0 in position 46:invalid continuation byte
即启动ride.py报错
如下方法可以解决:
1,找到Python目录:C:\Python27\Lib\site-packages\Selenium2Library\keywords
2,打开__init__.py文件,添加下面3行代码后,保存
import sys
reload(sys)
sys.setdefaultencoding(“utf-8”)
3,重新运行RF
(4)用例运行错误
首先创建c:\Robotframework\temp\文件夹(也可以是其他非中文的文件夹路径,在脚本对应的地方修改即可)
在python-path\Lib\site-packages\robotide\contrib\testrunner\目录下的testrunner.py中添加指定的temp路径
def _create_temporary_directory(self):
self._output_dir = tempfile.mkdtemp(".d", "RIDE","c:\\Robotframework\\temp")
atexit.register(self._remove_temporary_directory)
分析原因
默认路径是windows用户目录下,当用户名为中文时就会出现编码错误,这里直接把它指向了新建的文件夹就可以了
6、终于到了这一步,来测试一发百度吧
在界面中可以得到运行结果。
从我使用selenium和robotframework的经验来看,因为我个人比较偏向于python脚本的关系,我比较喜欢用pycharm来编写,这个rf的风格和qtp的类似,只不过qtp是excel类型的
上一篇: 利用Excel文档执行接口自动化测试