最近面试被问到RF测试框架,以前只知道是关键字驱动,没有深入了解,现在补一下基础知识。
一、搭建环境:
win10+anaconda(python3.5)+pycharm+robotFramework+IntelliBot
1、安装Anaconda:https://www.anaconda.com/download/
(win下一键安装,会自动添加到path,可在cmd中键入:conda --version 进行验证)
2、创建虚拟环境:conda create –n python3 python=3.5
#
# To activate this environment, use
#
# $ conda activate python3
#
# To deactivate an active environment, use
#
# $ conda deactivate
3、在虚拟环境中安装必要的库:
cmd键入:conda activate python3 ,进入虚拟环境,之后pip install如下库,requests做接口测试的,其他做功能测试
(再此没有安装RIDE,原因是RIDE基于wxPython,该库并不支持python3,告辞)
4、安装pycharm:http://www.jetbrains.com/pycharm/ (小老百姓,用社区版足矣)
5、配置pycharm:https://www.jianshu.com/p/7185c4eb3ca1?from=timeline&isappinstalled=0
别人写好的,直接用,不浪费时间。此处有坑,直接运行是失败的。
问题1:运行是提示找不到 robot.bat
分析:明明在pycharm中选择了刚刚安装虚拟环境(如下图),但是运行就是找不到,初步还以是环境变量问题,去查看系统环境变量。
发现Anaconda一键安装帮我加了path,则运行脚本时会先去Anaconda中python3.6中找robot.bat,尝试添加虚拟环境变量:
D:\ProgramFiles\Anaconda3\envs\python3\Scripts
结果还是不行,原因可能是有冲突,不行就直接在Anaconda中的python3.6中再安装一次:pip install robotframework,然后问题解决了
问题2:缺少浏览器驱动,无法启动浏览器,通过步骤6解决
6、配置浏览器驱动:
https://github.com/mozilla/geckodriver/releases (直接下载最新版)
http://npm.taobao.org/mirrors/chromedriver/ (根据chrome版本选择)
ChromeDriver v2.41 (2018-07-27)----------Supports Chrome v67-69
ChromeDriver v2.40 (2018-06-07)----------Supports Chrome v66-68
ChromeDriver v2.39 (2018-05-30)----------Supports Chrome v66-68
ChromeDriver v2.38 (2018-04-17)----------Supports Chrome v65-67
ChromeDriver v2.37 (2018-03-16)----------Supports Chrome v64-66
ChromeDriver v2.36 (2018-03-02)----------Supports Chrome v63-65
ChromeDriver v2.35 (2018-01-10)----------Supports Chrome v62-64
7、运行注意:根据网页实际修改脚本中的xpath,关键字与参数之间是4个空格;
再右键External Tool -> Robot Run TestSuite ;
或选中脚本中的test01,右键External Tool -> Robot Run SingleTestCase;
至此,hello world级别的内容已经完成。
二、基础知识:
RobotFramework,简称RF,一般测试项目分3层:Test Project、Test Suit 和 Test Case,它们3是爷父子关系。
Test Project可以是目录或文件,根据测试项目的大小选择,如上所示是目录,下面再新建Test Suit文件,并在Test Suit文件中写Test Case。
RF作为一个通用型测试框架,本身只提供基本的测试功能,其他功能需要通过添加相应的库:
(待续)