Robot Framework_Ride(Run标签)

前言

我一直在想 Robot Framework 不要 RIDE 可不可以。对于编写测试用例来说,只要掌握 Robot
Framework 的语法规则,随便在一个你顺手的编辑器下编写也没问题,甚至效率更高。为什么要填写
那个该死的“表格”。
直到运行案例的时候我才意识到 RIDE 的好处。在 RIDE 中运行测试用例,就是勾选想要运行的
用例,然后点击按钮即可。想想我们在做单元测试的时候可不会这么方便,调用 addTest()方法将一个
个想要运行的测试方法添加到测试套件中,或者一行行的注释掉不添加到测试套件的测试用例的
addTest()方法,这是个极其痛苦的过程

Run 标签

下面是 Run 标签的截图:

第一眼看上去,Run 标签提供了丰富的操作和日志。按照截图我们依次来说明 Run 标签上的按钮和输
入框的作用:
1) Execution Profile:选择运行方式,里面有 pybot、jybot 和 custom script。其中我们默认是用 pybot
来运行案例,pybot 的运行 Python 编译器完成。jybot 需要安装 Jython 的支持。custom script 是选择自定义
的脚本来运行。
2) Start 和 Stop:用例的运行和停止。
3) Report 和 Log:报告和日志,要运行之后才能点击。他们之间的区别:报告更多是结果上的展示,
日志更多是过程的记录,在测试用例调试的过程中更多使用日志来查看执行错误。当只想知道测试用例的
最终执行情况时用报告。
4) Autosave:自动保存,如果不勾选,在修改了用例之后如果没有保存的话,运行案例时会提示是否
保存。勾选则在运行时自动保存了。
5) Arguments:pybot 的参数(或者 jybot 等),可以在这里输入 pybot 的命令完成相应的操作。
6) Only Run Tests with these Tags:只运行这些标记的测试案例。
7) Skip Tests with these Tags: 跳过这些标记的测试案例。
下面的两个区域,中间区域记录用例的执行过程,底部的区域输出用例的执行结果。

运行与停止
在 Run 标签页提供了运行与停止的按钮,使用很简单。可是你知道到点击“运行”按钮的时候,Robot
Framework 是怎么执行“测试套件.txt”文件的么?点击“停止”按钮的时候,Robot Framework 又做了什
么操作来终止用例的执行的?带着这样的疑问,我们来简单的读一下 RIDE 的 run 代码。
首先打开 C:\Python27\Lib\site-packages\robotide\run 目录下的 process.py 文件

import os
import time
import tempfile
import subprocess
class Process(object):
……
def start(self):
self._out_fd, self._out_path = \
tempfile.mkstemp(prefix='rfproc_', suffix='.txt',
text=True)
self._out_file = open(self._out_path)
if not self._command:
self._error = 'The command is missing from this run configuration.'
return
try:
self._process = subprocess.Popen(self._command, stdout=self._out_fd,
stderr=subprocess.STDOUT)
except OSError, err:
self._error = str(err)
……
def stop(self):
try:
self._process.kill()
except AttributeError:
raise AttributeError('Stopping process is possible only with '
'Python 2.6 or newer')
……
def get_output(self, wait_until_finished=False):
"""Returns the output produced by the process.
If ``wait_until_finished`` is True, blocks until the process is
finished and returns all output. Otherwise the currently available
output is returned immediately.
Currently available output depends on buffering and might not include
everything that has been written by the process.
"""
if self._error:
self._close_outputs()
return self._error
if wait_until_finished:
self._process.wait()
output = self._out_file.read()
if self.is_finished():
self._close_outputs()
return output
def _close_outputs(self):
self._out_file.close()
os.close(self._out_fd)
self._remove_tempfile()

首先看 start()方法,通过 tempfile 模块的 mkstemp()方法找到“txt”文件,也就是“测试套件.txt”文这类件。接着通过 open()方法打开。
在 get_output()方法中通过 read()方法来读取“txt”文件。最后把读取的文件的赋值给变量 output 并返回。
在_close_outputs()方法中通过 close()关闭打开的“txt”文件。
停止测试用例的执行非常单间,由 stop()方法实现,通过调用 kill()将用例的执行进程杀死。
代码读到这里只是开始,get_output()方法读到的文件返回给谁了呢?或者谁会调用 get_output()方法
呢?继续打开 C:\Python27\Lib\site-packages\robotide\run 目录下的 ui.py 文件

 

……
from robotide.run.process import Process
……
class Runner(wx.EvtHandler):
def __init__(self, config, notebook):
wx.EvtHandler.__init__(self)
self.Bind(wx.EVT_TIMER, self.OnTimer)
self.name = config.name
self._timer = wx.Timer(self)
self._config = config
self._window = self._get_output_window(notebook)
def _get_output_window(self, notebook):
return _OutputWindow(notebook, self)
def run(self):
self._process = Process(self._config.command)
self._process.start()
self._timer.Start(500)
def OnTimer(self, event=None):
finished = self._process.is_finished()
self._window.update_output(self._process.get_output(), finished)
if finished:
self._timer.Stop()
def stop(self):
try:
self._process.stop()
except Exception, err:
wx.MessageBox(str(err), style=wx.ICON_ERROR)
……

ui.py 文件调用 process.py 文件的方法来运行测试用例。如果读者精通于 Python 语言的话可以顺着这条
线继续读下去,看看哪个方法会调用 Runer 类。因为本文档的重点的不是分析 Robot Framework 代码,所
以不在再继续。但这里想传达的思路是知其然,一定要知其所以然;用工具而不要受制于工具

3 报告与日志

当用例运行结束,Robot Framework 生成三个文件:output.xml、log.html 和 report.html。output.xml 记录的测试结果是 xml 文件,这个文件不够直观。根据特定的需要可以编写脚本读取 xml
文件并生成特定的测试报告。
相比较而言 log.html 和 report.html 报告要直观得多,因为是 html 格式的嘛。
查看 log.html 文件,点击 Run 标签而上的“Log”按钮,通过默认浏览器打开

在 log.html 文件中可以查看用例执行的每一步,适合跟踪定义问题。

查看 report.html,点击 Run 标签而上的“Report”按钮,通过默认浏览器打开

report.html 用于最终结果的展示,适合了解测试用例的执行情况:测试了哪些模块,用例数、失败率等。

4、筛选执行用例

这一节来探讨一下,几中方式可以筛选要运行的运用例。
第一种:勾选用例
在要执行的用例前面打勾。

这种方法最简单和直观,要运行哪条用例就勾选哪一条。如果全部不勾选,点击“运行”按钮会运行所有用例

也可以在“测试套件”上右键选择:

 

Select All Test:选择当前套件的所有用例。
Select Only Failed Test:选择当前套件下运行失败的用例。
Select Only Passed Test:选择当前套件下运行成功的用例。
对于一个测试套件下有几十上百个用例来说,这几选项将非常有用。

第二种:用命令
这就用到 Run 标签中的 Arguments 功能。

 


在 Arguments 的输入框内输入“-t testcase4”。点击“Start”按钮,只执行了 test case4 这一条用例。
Arguments 能做的事情可不止于此。想了解更多多命令。可以在 cmd.exe 下执行“pybot.bat --help”

第三种:筛选标记
这种方式就非常有意思的,对于不同的人来说会有一些标记,比如某富二代的标记就是“任性”。对
于用例来说也可以打上标记。比如“重要”、“一般”、“基础”等。
点击某个用例,你会看到“Setting>>”的按钮,点击按钮展开:

在最下面将会看到“Tags”的选项,在“<Add New>”的输入框内输入“重要”。这条用例就打上了
“重要”的标记。
现在切换到 Run 标签,我要运行带“重要”标记的用例了,如何去做了?这就要用到:
Only Run Tests with these Tags:只运行这些标记的测试案例。
Skip Tests with these Tags: 跳过这些标记的测试案例

因为“test case3”被打上了“重要”的标记,所以它被执行了。
对于一个用例来说,我们可以为它添加多个标记。勾选“Skip Tests with these Tags”选项可以跳过某些标记的用例。

转载于:https://www.cnblogs.com/101718qiong/p/8268463.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: robotframework-ride是一个基于Python编写的自动化测试工具,它可以帮助测试人员快速创建和运行自动化测试用例。安装robotframework-ride需要先安装Python和pip,然后使用pip命令安装robotframework-ride。具体步骤如下: 1. 安装Python:从Python官网下载并安装Python,建议安装最新版本的Python。 2. 安装pip:pip是Python的包管理工具,可以使用pip安装和管理Python包。在安装Python时,pip已经被自动安装了。可以通过运行pip --version命令来检查pip是否已经安装。 3. 安装robotframework-ride:使用pip命令安装robotframework-ride,可以使用以下命令: pip install robotframework-ride 4. 启动robotframework-ride:安装完成后,可以通过运行ride.py文件启动robotframework-ride。可以在命令行中输入以下命令: python -m robotide.__init__ 或者直接双击ride.py文件启动。 安装完成后,就可以使用robotframework-ride创建和运行自动化测试用例了。 ### 回答2: Robot Framework是一个通用的自动化测试框架,可以用来测试各种应用程序和Web应用程序。RIDERobot Framework Integrated Development Environment)是一个基于Python的集成开发环境,使用RIDE工具可以大大减轻测试用例的编写和管理负担。RIDE支持使用PythonRobot Framework的打印输出,实时编辑测试数据和测试套件,以便于开发人员和测试人员开发和维护测试用例。 安装RIDE有几种不同的方法,可以选择最适合你的环境的方法。以下是安装RIDE的步骤: 1. 安装Python:在安装RIDE之前,需要在计算机上安装Python 2.7版本或Python 3.X版本,根据需要选择版本。 2. 安装wxPython:RIDE使用wxPython提供GUI,因此需要安装wxPython库。可以在官网下载:https://www.wxpython.org/pages/downloads/。根据需要选择相应的版本,下载完之后直接运行安装程序进行安装即可。 3. 安装Robot Framework:在安装RIDE之前,需要安装Robot Framework。可以使用pip命令进行安装。在命令提示符中输入以下命令即可:pip install robotframework 4. 安装RIDE:在安装完上述软件之后,就可以开始安装RIDE了。可以从官方网站下载RIDE,下载地址为:http://code.google.com/p/robotframework-ride/downloads/list。在下载完成之后,解压缩文件并运行RIDE.bat文件即可启动RIDE。这里需要注意的是,必须使用管理员身份运行RIDE.bat。 5. 配置RIDE:在RIDE启动后,需要进行一些配置。首先,需要配置Robot Framework的路径。在菜单中选择“Tools” > “Preferences”,然后在“Plugins”选项卡中选择“RobotFramework”,在“Executable”字段中输入Robot Framework安装目录的完整路径。然后,可以选择“Editor”选项卡来配置编辑器首选项。此外,还可以在其他选项卡中配置更多选项,如自动保存机制等。 以上就是Robot Framework- RIDE安装的步骤,根据这些步骤进行安装,可以使您简单高效地进行测试用例的管理和编写,提交测试工作效率。 ### 回答3: Robot Framework是一种通用的自动化测试框架,它支持各种不同类型的测试,包括Web、移动、API等。Robot Framework的优点在于它可以轻松地创建可读性强、易于维护的测试用例。 同时,Robot Framework也提供了许多工具来简化测试执行,其中一个常用的工具就是RIDE。RIDERobot Framework的官方开发IDE,它提供了一个用户友好的界面,使得创建、编辑和运行测试用例变得更加容易。 下面我们来看一下如何安装RIDE: 1. 安装Python 首先需要安装Python 2.7.x 版本的解释器,请从Python官方网站 https://www.python.org/downloads/ 下载Python 2.7.x版本的32位或64位安装程序,根据自己的操作系统和PC硬件配置选择对应的版本。 2. 安装wxPython RIDE使用wxPython实现了它的用户界面。你需要安装wxPython来运行RIDE。可以使用Python的包管理器pip来安装wxPython,如下: 打开控制台并执行以下命令: pip install wxPython 3. 安装Robot Framework和RIDE 接下来我们需要安装Robot Framework和RIDE。同样可以使用pip命令管理器完成安装。在控制台输入以下命令: pip install robotframework pip install robotframework-ride 4. 运行RIDE 安装完成后,在文件资源管理器中定位到安装目录,双击‘ride.py’文件运行RIDE。如果RIDE成功启动,你将会看到RIDE的主界面。 5. 创建测试用例 点击‘Create a new test case file’按钮,输入文件名并以“.txt”为文件扩展名。文件将保存在你选择的路径下。使用文本编辑器的语法,你可以轻松地创建测试用例。 以上就是Robot Framework-RIDE的安装过程,通过这篇教程,你应该可以轻松地完成一个新的测试项目并开始优化你的测试流程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值