Robot Framework(十一) 执行测试用例——后处理输出
3.3后处理输出
在测试执行期间生成的XML输出文件可以在之后由rebot工具进行后处理,该工具是Robot Framework的组成部分。在测试执行期间生成测试报告和日志时会自动使用它,但在执行后也可以单独使用它。
3.3.1使用rebot工具
概要
rebot|jyrebot|ipyrebot [options] robot_outputs
python|jython|ipy -m robot.rebot [options] robot_outputs
python|jython|ipy path/to/robot/rebot.py [options] robot_outputs
java -jar robotframework.jar rebot [options] robot_outputs
rebot runner脚本在Python上运行,但也有分别在Jython和IronPython上运行的jyrebot 和ipyrebot runner脚本。建议使用rebot,因为它比替代品快得多。除了使用这些脚本之外,还可以使用 robot.rebot 入口点作为模块或使用任何解释器的脚本,或使用独立的JAR分发。
指定选项和参数
使用rebot的基本语法与开始测试执行时的基本语法完全相同, 并且大多数命令行选项都相同。主要区别在于rebot的参数是 XML输出文件而不是测试数据文件或目录。
返回带有rebot的代码
来自rebot的返回代码与运行测试时的返回代码完全相同。
3.3.2创建不同的报告和日志
您可以使用rebot创建在测试执行期间自动创建的相同报告和日志。当然,创建完全相同的文件是不明智的,但是,例如,一个报告包含所有测试用例而另一个报告只有一些测试用例可能很有用:
rebot output.xml
rebot path/to/output_file.xml
rebot --include smoke --name Smoke_Tests c:\results\output.xml
另一个常见用法是在运行测试时仅创建输出文件(可以使用选项--log NONE 和--report NONE禁用日志和报告生成)并在以后生成日志和报告。例如,测试可以在不同的环境中执行,输出收集到中心位置的文件,以及在那里创建的报告和日志。如果在Jython上运行测试时生成报告和日志会花费大量时间,那么这种方法也可以很好地工作。禁用日志和报告生成并在以后使用rebot生成它们可以节省大量时间并使用更少的内存。
3.3.3组合输出
rebot最重要的特征是它能够组合来自不同测试执行轮次的输出。例如,此功能允许在不同环境中运行相同的测试用例,并从所有输出生成总体报告。组合输出非常简单,所有需要做的就是提供几个输出文件作为参数:
rebot output1.xml output2.xml
rebot outputs/*.xml
组合输出时,会创建一个新的顶级测试套件,以便给定输出文件中的测试套件是其子套件。这在执行多个测试数据文件或目录时的工作方式相同,在这种情况下,顶级测试套件的名称是通过将子套件名称与&符号和空格连接而创建的。这些自动生成的名称不是那么好,使用--name来提供更有意义的名称通常是个好主意:
rebot --name Browser_Compatibility firefox.xml opera.xml safari.xml ie.xml
rebot --include smoke --name Smoke_Tests c:\results\*.xml
Robot Framework(十一) 执行测试用例——后处理输出的更多相关文章
- Robot Framework(十三) 执行测试用例——创建输出
3.5创建输出 执行测试时会创建几个输出文件,并且所有这些文件都与测试结果有某种关联.本节讨论创建的输出,如何配置它们的创建位置以及如何微调其内容. 3.5.1不同的输出文件 输出目录 输出文件 日志 ...
- Robot Framework 三种测试用例模式
1.三种测试用例模式 关键字驱动(keyword-driver).数据驱动(data-driver).行为驱动模式(behavior-driver) 2.关键字驱动(keyword-driver) ...
- Robot Framework(十二) 执行测试用例——配置执行
3.4配置执行 本节介绍可用于配置测试执行或后处理输出的不同命令行选项.与生成的输出文件相关的选项将在下一节中讨论. 3.4.1选择测试用例 通过测试套件和测试用例名称 按标签名称 当没有测试匹配选择 ...
- 【转】Robot Framework 快速入门
目录 介绍 概述 安装 运行demo 介绍样例应用程序 测试用例 第一个测试用例 高级别测试用例 数据驱动测试用例 关键词keywords 内置关键词 库关键词 用户定义关键词 变量 定义变量 使用变 ...
- Robot Framework使用For循环
1.普通的For循环 在一个普通的For循环中,循环开始的关键字是 :FOR ,其中的:用于与一般关键字做区分,对于循环结构体内的每一行,使用 \ 作为改行的行首关键字.对于循环中的变量,可以在 IN ...
- Robot Framework 教程 (7) - 使用For循环
在自动化测试过程中,使用For循环来对某个动作进行重复操作是很普遍的行为.在Robot Framework中,各种测试库中均提供了多种方式的For循环结构,在其中覆盖了大部分类型的循环类型.而Robo ...
- Robot Framework 快速入门
Robot Framework 快速入门 目录 介绍 概述 安装 运行demo 介绍样例应用程序 测试用例 第一个测试用例 高级别测试用例 数据驱动测试用例 关键词keywords 内置关键词 库关键 ...
- Robot FrameWork测试案例
Robot FrameWork是一个自动测试框架,可到官网查看详细介绍. 安装 Robot Framework 本文中的Robot framework安装在Win7 (32 bit) 平台上. 接下来 ...
- Robot Framework(十四) 扩展RobotFramework框架——创建测试库
4.1创建测试库 Robot Framework的实际测试功能由测试库提供.有许多现有的库,其中一些甚至与核心框架捆绑在一起,但仍然经常需要创建新的库.这个任务并不复杂,因为正如本章所示,Robot ...
随机推荐
- 解决“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”
问题描述:远程访问该数据库(客户端同样是Oracle11g)提示“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”. 解决的办法: 1.一定要关闭Win ...
- Spring Boot 学习系列(04)—分而治之,多module打包
此文已由作者易国强授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 明确功能,各司其职 在一个结构清晰的项目中,一个没有module划分的结构显然不是最佳实践.有人会说可以在同 ...
- E20180527-hm
percolate vi. 渗透; 滤; 渗入; (思想等) 渗透
- 2016四川省赛A,C【写了1w个if的水题】
A题: #include <iostream> #include <stdio.h> #include <string.h> #include <algori ...
- 如何使得 python 脚本 不一闪而过
1. 简单的方法是在最后加上如下语句: os.system("pause") 2. 但是这个不一定有用,原因是可能在之前的代码中发生异常,那么我们看到的效果也是直接一闪而过 办法 ...
- [Xcode 实际操作]一、博主领进门-(14)在顶部状态栏显示风火轮以及为应用程序添加应用图标
目录:[Swift]Xcode实际操作 本文将演示在顶部状态栏显示风火轮. 主要用于在执行某个长时间动作时,提示用户耐心等待动作的执行. 在项目导航区,打开视图控制器的代码文件[ViewControl ...
- nil 与 release
nil就是把一个对象的指针置为空,只是切断了指针与内存中对象的联系:而release才是真正通知内存释放这个对象. 如果没有release就直接nil,那么虽然不会出错,却等于自己制造内存泄漏了,因为 ...
- C#字体字号的改变
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- [题解](tarjan割点/点双)luogu_P3225_矿场搭建
首先和割点有关,求割点,然后这些割点应该把这个图分成了多个点双,可以考虑点双的缩点,假如缩点做的话我们要分析每个点双的性质和贡献 先拿出一个点双来,如果它没有连接着割点,那么至少要建两个,以防止其中一 ...
- UVA10129:Play on Words(欧拉回路)
Some of the secret doors contain a very interesting word puzzle. The team of archaeologists has to s ...