俗话都说,一山不容二虎,一般推荐robotframework的官配都是Python2(因为只有Python2对RF的RIDE编辑器支持最好),如下图所示:
现有环境配置:
操作系统: Win7 32bit
Python 2.7.8
Python 3.5.2
Pycharm Community Edition 2016.3.2
装好以上的软件后,需要在Python2的Scripts目录下去运行pip命令或者手动下载安装以下的第三方包:
robotframework: 3.0.2(pip install robotframework)
wxPython: unicode-2.8.12.1(需要下载安装唯一的这个版本,否则不支持。名称:wxPython2.8-win32-unicode-2.8.12.1-py27.exe)
robotframework-ride: 1.5.2.1 (命令:pip install robotframework-ride ,装好后确认Scripts目录下有ride.py的文件即可)
selenium2library: 1.8.1 (已同时支持python2和python3,命令:pip install robotframework-selenium2library)
selenium:2.x一定要下载2的版本。(命令:pip install selenium=2.53.6)
databaselibrary: 0.8.1(命令:pip install robotframework-databaselibrary)
现有环境配置步骤:
1 已搭建好Python3.5和Pycharm的环境
2 检查Python3.5的安装目录,发现其目录为(C:\Program Files\Python35-32)
3 安装Python2.7,安装时设置其目录为(C:\Python27)
4 设置系统环境变量Path的值,使其中包含有以下目录:C:\Python27\Scripts;C:\Python27;C:\Program Files\Python35-32\Scripts;C:\Program Files\Python35-32(注意前后顺序,先有27然后有35)
检查点:cmd下面输入path,可以同时出现2和3的目录,且2在前3在后既为成功!
使用Python2下的RIDE
1 在cmd命令下进入目录C:\Python27\Scripts,运行ride.py (或者python ride.py ---总之选择可以运行python27的那个编译器)
2 打开ride的界面可以进行RF测试用例的编写,比如 如下的步骤
3 之后可以通过Text Edit来导出测试用例如下:
*** Settings ***
Library Selenium2Library
Resource LoginKeyWord.txt
*** Test Cases ***
Login
[Documentation] This is testing for Selenium2Library webdrvier
Open Browser http://www.baidu.com chrome
Input Text id=kw CC先生 简书
Click button id = su
sleep 2
${title} Get Title
should contain ${title} 百度
close Browser
4 此测试用例可在Python3的环境下导入Pycharm(此时Pycharm会提示你需要安装相对应的插件)
5 在环境变量里将Python3对应的目录名提前,则可以在Pycharm中运行这个脚本了。
CC先生敲小黑板:开源工具和代码的使用很方便,不过版本之间的切换的确也是非常头痛的问题,Python2对应有Python3,RF2对应有RF3,Selenium2对应还有Selenium3,不一样的版本搭配到一起就会让你配置到崩溃的地步。
Linux和IOS系统下可以使用Pyenv来很好解决Python多版本的问题,Windows系统下暂时能使用的办法比较好用的找到的就是直接更改环境变量。
1 进入python3.5安装目录。找到python.exe程序,把它重命名为python3.exe
打开命令行界面测试。执行python命令会进入python2.7的交互环境,执行python3命令会进入python3.5交互环境。
2 两个版本的Python名称分别设置的是:Python和和python3
使用 python -m pip install -U pip 进行升级的时候只是升级了2.7版本的pip
再使用 python3 -m pip install -U pip 对3.5版本pip进行升级,解决问题。
3 如果使用Pycharm的同学,注意把Pycharm里面运行设置中的解释器进行修改