pycharm+anaconda+robotFramework自动化测试环境搭建

最近面试被问到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作为一个通用型测试框架,本身只提供基本的测试功能,其他功能需要通过添加相应的库:

(待续)

猜你喜欢

转载自blog.csdn.net/xingzishuai/article/details/81700958