前言

   Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它的使用。

Robot Framework环境搭建步骤

Robot Framework是基于Python语言开发的一款框架,搭建步骤如下:

对于Robot Framework熟悉的老手尝鲜新版 或 python熟悉的朋友看如下简易安装步骤即可(详细截图说明内容适合新入门朋友)

简易安装步骤:

  1. 安装python3.7
  2. 在dos命令输入 pip install robotframework 在线安装robotframework
  3. 在dos命令输入 pip install Pypubsub==3.3.0 在线安装 Pypubsub
  4. 在dos命令输入 pip install wxPython==4.0.3 在线安装 wxPython
  5. 在dos命令输入 pip install robotframework-ride 在线安装robotframework-ride
  6. 在dos命令输入 pip list 检查是否安装成功
  7. 在dos命令输入 ride.py 检查是否出现RIDE主界面,如不能出现,可去 python安装路径\scripts\ride.py 手动双击启动

详细安装步骤:

  1. 安装 python3.7
  2. 在线安装 robotframework 在dos命令中输入 pip install robotframework

  3. 在线安装 Pypubsub 在dos命令中输入 pip install Pypubsub==3.3.0

  4. 在线安装 wxPython 在dos命令中输入 pip install wxPython==4.0.3(截图略,与上截图类似)
  5. 在线安装 robotframework-ride 在dos命令输入 pip install robotframework-ride ,安装过程中需要安装依赖,过程较慢(截图略,与上截图类似)
  6. 在dos命令输入 pip list ,检查上述软件是否安装成功

  7. 在dos命令输入 ride.py 命令打开RIDE主界面

常见问题

  1. 依赖相关问题

    robotframework-ride 1.7.3.1 安装所使用的Pypubsub版本要求的兼容版本为3.3.0,如果太新,安装过程中会出现警告信息,但笔者实验后发现出现警告也可以使用,但还是建议大家使用所要求的兼容版本。
  2. 偶发性的报错

    由于笔者是软测培训相关的讲师,在教学过程中,学生安装时出现过如下截图的偶发性错误:



    dos命令下错误信息:

    C:\WINDOWS\system32>ride.py

    Traceback (most recent call last):

    File "d:\python\lib\site-packages\robotide\application\application.py", line 59, in OnInit

    self._plugin_loader.enable_plugins()

    File "d:\python\lib\site-packages\robotide\application\pluginloader.py", line 43, in enable_plugins

    p.enable_on_startup()

    File "d:\python\lib\site-packages\robotide\application\pluginconnector.py", line 52, in enable_on_startup

    self.enable()

    File "d:\python\lib\site-packages\robotide\application\pluginconnector.py", line 57, in enable

    self._plugin.enable()

    File "d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 162, in enable

    self._build_ui()

    File "d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 558, in _build_ui

    self._build_notebook_tab()

    File "d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 734, in _build_notebook_tab

    self.out = self._create_output_textctrl()

    File "d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 769, in _create_output_textctrl

    font = self._create_font()

    File "d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 789, in _create_font

    font=wx.SystemSettings.GetFont(wx.SYS_ANSI_VAR_FONT)

    wx._core.wxAssertionError: C++ assertion "wxFontEnumerator::IsValidFacename(font.GetFaceName())" failed at ....\src\msw\settings.cpp(301) in wxSystemSettingsNative::GetFont():

    OnInit returned false, exiting...

    Error in atexit._run_exitfuncs:

    wx._core.wxAssertionError: C++ assertion "GetEventHandler() == this" failed at ....\src\common\wincmn.cpp(478) in wxWindowBase::~wxWindowBase(): any pushed event handlers must have been removed

    解决方案:

    根据如上提示信息,找到 testrunnerplugin.py文件路径,如上是

    d:\python\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py

    用pycharm等python代码编辑工具打开该py文件,编辑789行:

    把 font=wx.SystemSettings.GetFont(wx.SYS_ANSI_VAR_FONT) 改为 font=wx.SystemSettings.GetFont(wx.SYS_ANSI_FIXED_FONT)

    如果还不成功,则改为

    font=wx.SystemSettings.GetFont(wx.SYS_SYSTEM_FONT)
  3. 没有权限报错

    在使用Text Edit区域编写代码完成,保存代码的时候会出现如下图报错:



    错误信息:

    Error in serializing 'C:\robotframeworkcode\newdream':

    [Errno 13] Permission denied: 'C:\robotframeworkcode\newdream.'

    解决方案:

    问题的主因是Robot Framework的RIDE没有相关权限引起的。

    强制关闭 Robot Framework 的RIDE界面后,找到 ride.py 文件的存放路径(python安装路径\Scripts\ride.py),

    Windows 7 操作系统,右击 ride.py 文件 -- 选择 管理员取得所有权 即可。

    Windows 10操作系统,右击 ride.py 文件 -- 选择 授予访问权限 -- 特定用户 -- 选择自己登录Windows10的账号共享即可。
  4. 离线安装

    离线安装不会自动安装依赖类库,需要手动把相关依赖类库下载才可进行安装,笔者不推荐此安装方式。

    如果在没有网络的环境下,使用离线安装环境,需要提前下载对应的类库安装文件,按如下顺序下载安装:

    robotframework-3.1.1 、PyPubSub-3.3.0 、six-1.12.0、Pygments-2.3.1、robotframeworklexer-1.1、robotframework-ride-1.7.3.1

    下载网站:https://pypi.org/

    离线安装python类库步骤:

    1)解压下载的类库软件

    2)在dos命令中进入解压目录,输入 python setup.py install 安装
  5. robotframework-excellibrary库暂时不支持

    该库暂时不支持,没有解决方案,有相关方案的朋友可以反馈下。

后记

  在2019年之前,robotframework-ride的版本一直是1.5.2.1,是2016年1月份的版本,里面需要使用 wxPython2.8-win64-unicode-2.8.12.1-py27.exe,wxPython2.8只能安装在python2.7的环境上,导致如果想同时使用robot framework做测试且又需要python3环境编写python代码的小伙伴都需要在操作系统上安装两个python环境(2.7和3.7)。
2019年,robotframework-ride迎来的这次更新算是解决了此问题,从此只需要安装python3.6以上的python环境即可。

参考文献

robotframework 官方文档 : https://pypi.org/project/robotframework/#installation

Robot Framework 使用【1】-- 基于Python3.7 + RIDE 最新版本搭建的更多相关文章

  1. Robot Framework学习笔记(六)------RIDE界面说明

    RIDE是一款专门用来编辑Robot Framework用例的软件,用Python编写并且开源. 1.测试项目.测试套件Edit 标签 测试项目和测试套件所提供的 Edit 标签的功能是一样的. 在 ...

  2. Robot Framework学习笔记(八)------ride标签使用

    一.edit标签使用 1.导入库 点击 Edit 标签页右侧的"Library"按钮,来添加库.在添加库之前,首先库已经在 Python 下进行了安装.如,添加"Sele ...

  3. 基于Python3.7的robotframework环境搭建步骤

    一.前言 Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它 ...

  4. Python3第三方组件最新版本追踪实现

    一.说明 在安全基线中有一项要求就是注意软件版本是否是最新版本,检查是否是最新版本有两方面的工作一是查看当前使用的软件版本二是当前使用软件的最新版本.在之前的“安全基线自动化扫描.生成报告.加固的实现 ...

  5. Python3+Robot Framework+RIDE安装使用教程

    一.说明 Python3----网上很多文章都是用Python2,Robot Framework的部分文档没更新也直接写着不支持Python3(如RIDE does not yet support P ...

  6. 【Robot Framework】---- Robot Framework简介、特点、RIDE

    Robot Framework简介.特点.RIDE 一.简介.特点. Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型 ...

  7. 最新 robot framework安装

    相信大家对robot framework并不陌生,它是一个基于Python语言,用于验收测试和验收测试驱动开发(ATDD)的通用测试自动化框架=,提供了一套特定的语法,并且有非常丰富的测试库. Pyt ...

  8. Robot Framework + Selenium library + IEDriver环境搭建

    转载:https://www.cnblogs.com/Ming8006/p/4998492.html#c.d 目录: 1 安装文件准备2 Robot框架结构3 环境搭建  3.1 安装Python  ...

  9. robot framework 安装

    一.安装 Python 2.7 pip 和 setuptools (Python 的套件管理程式,最新版的Python 2.7.13已包含) Robot Framework (此工具本身) wxPyt ...

随机推荐

  1. winform学习(5)MDI窗体

    SDI窗体 single document interface 单文档界面,即单个简单的窗体 MDI窗体 multiple document interface 多文档界面(主窗体与子窗体的关系,避免 ...

  2. DB技能数据库里把技能伤害调整

    1. MagID 技能代号 2. MagName 技能名称 3. Effect Type 效果类型(使用技能时角色的动作效果) 4. Effect 效果(技能产生的动画效果) 5. Spell 每次耗 ...

  3. js加密(三)企名片

    1. url: https://www.qimingpian.cn/finosda/project/pinvestment 2. target: 3. 简单分析 3.1 打开调试窗口,刷新页面,看看都 ...

  4. 喵星之旅-狂奔的兔子-基于docker的rabbitmq安装

    docker安装参考:喵星之旅-狂奔的兔子-docker安装和基本使用 一.查询镜像名称 由于我们要安装的是有web管理页面的,不能直接拉取,需要指定版本. 登录docker仓库查询:https:// ...

  5. 密码学笔记——eval(function(p,a,c,k,e,d) 加密破解

    密码学笔记——eval(function(p,a,c,k,e,d) 的加密破解 例题: 小明某天在看js的时候,突然看到了这么一段代码,发现怎么也理不出代码逻辑,你能帮帮他吗? 格式:SimCTF{} ...

  6. 多种语言输出helloworld

  7. Linux shell cut 命令详解

    详细资料请参考:博客园骏马金龙 https://www.cnblogs.com/f-ck-need-u/p/7521357.html cut命令将行按指定的分隔符分割成多列,它的弱点在于不好处理多个分 ...

  8. 粪发涂墙-java1

    相信很多人和笔者一样,经常会做一些数组的初始化工作,也肯定会经常用到集合类.假如我现在要初始化一个String类型的数组,可以很方便的使用如下代码: String [] strs = {"T ...

  9. net core调用MimeKit发送QQ邮件

    一.在QQ邮箱内申请授权码,具体参考请官方文档 二.具体代码 public void TestSendMailDemo() { MimeMessage message = new MimeMessag ...

  10. python pip 安装常用库如何使用国内镜像源

    最近通过python安装一些常用库发现下载速度特别慢,而且还会出现无法安装等错误,尝试找了一些国内的镜像源,发现阿里云的速度很快,这里做个记录,并分享给大家. 国内镜像源 阿里云:http://mir ...