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(十一) 执行测试用例——后处理输出的更多相关文章

  1. Robot Framework(十三) 执行测试用例——创建输出

    3.5创建输出 执行测试时会创建几个输出文件,并且所有这些文件都与测试结果有某种关联.本节讨论创建的输出,如何配置它们的创建位置以及如何微调其内容. 3.5.1不同的输出文件 输出目录 输出文件 日志 ...

  2. Robot Framework 三种测试用例模式

    1.三种测试用例模式 关键字驱动(keyword-driver).数据驱动(data-driver).行为驱动模式(behavior-driver) 2.关键字驱动(keyword-driver)   ...

  3. Robot Framework(十二) 执行测试用例——配置执行

    3.4配置执行 本节介绍可用于配置测试执行或后处理输出的不同命令行选项.与生成的输出文件相关的选项将在下一节中讨论. 3.4.1选择测试用例 通过测试套件和测试用例名称 按标签名称 当没有测试匹配选择 ...

  4. 【转】Robot Framework 快速入门

    目录 介绍 概述 安装 运行demo 介绍样例应用程序 测试用例 第一个测试用例 高级别测试用例 数据驱动测试用例 关键词keywords 内置关键词 库关键词 用户定义关键词 变量 定义变量 使用变 ...

  5. Robot Framework使用For循环

    1.普通的For循环 在一个普通的For循环中,循环开始的关键字是 :FOR ,其中的:用于与一般关键字做区分,对于循环结构体内的每一行,使用 \ 作为改行的行首关键字.对于循环中的变量,可以在 IN ...

  6. Robot Framework 教程 (7) - 使用For循环

    在自动化测试过程中,使用For循环来对某个动作进行重复操作是很普遍的行为.在Robot Framework中,各种测试库中均提供了多种方式的For循环结构,在其中覆盖了大部分类型的循环类型.而Robo ...

  7. Robot Framework 快速入门

    Robot Framework 快速入门 目录 介绍 概述 安装 运行demo 介绍样例应用程序 测试用例 第一个测试用例 高级别测试用例 数据驱动测试用例 关键词keywords 内置关键词 库关键 ...

  8. Robot FrameWork测试案例

    Robot FrameWork是一个自动测试框架,可到官网查看详细介绍. 安装 Robot Framework 本文中的Robot framework安装在Win7 (32 bit) 平台上. 接下来 ...

  9. Robot Framework(十四) 扩展RobotFramework框架——创建测试库

    4.1创建测试库 Robot Framework的实际测试功能由测试库提供.有许多现有的库,其中一些甚至与核心框架捆绑在一起,但仍然经常需要创建新的库.这个任务并不复杂,因为正如本章所示,Robot ...

随机推荐

  1. Entity FrameWork 5 增删改查 & 直接调用sql语句 ?

    #region 1.0 新增 -void Add() /// <summary> /// 1.0 新增 /// </summary> static void Add() { / ...

  2. hdoj5875【二分+RMQ】

    全部从我大哥那里学习得来.. 一开始硬着头皮就是根据思路上线段树,明知是T还要写(因为线段树还不是很熟,趁机练一发) 后来果然T了,然后就去学了一发RMQ的ST算法,查询是O(1). ST算法主要: ...

  3. [Xcode 实际操作]八、网络与多线程-(8)使用同步Get方式查询某地天气

    目录:[Swift]Xcode实际操作 本文将演示如果通过Get的方式,请求某地天气信息,同步获取网络数据, 一旦发送同步请求,程序将停止用户交互,直至服务器返回数据. 为了增强数据访问的安全性,从9 ...

  4. [Swift]堆栈Stack:检索最小元素时间复杂度O(1)

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  5. 给 UILabel 中的文字增加 line-through / Strikethrough (删除线)样式

    iOS 6 中苹果引入了 NSStrikethroughStyleAttributeName 属性,用于设置 NSAttributedString 的删除线样式,用法如下: let attribute ...

  6. 【NOI广东省选模拟赛】割

    [问题描述] 给出 n 个数 a1,a2,...,an, 询问有多少个三元组(i, j, k)满足以下两个条件:1. i < j < k: 2. ai*aj*ak 是 p 的倍数. [输入 ...

  7. Cordova 系列之创建一个iOS项目

    1.打开终端 2.输入命令 $ cd Desktop (PS:Desktop表示放在桌面,你可以选择放任意位置) 3.$  cordova create HelloWorld com.example. ...

  8. ZOJ 4016 Mergeable Stack(from The 18th Zhejiang University Programming Contest Sponsored by TuSimple)

    模拟题,用链表来进行模拟 # include <stdio.h> # include <stdlib.h> typedef struct node { int num; str ...

  9. C# 基础之索引器

    当一个类有数组成员时,索引器将大大简化对类中数组成员的访问 索引器类似于属性有get与set访问器 列如: 使用: 总结:从以上代码可以看出索引器也是对私有字段进行访问的方式,但此时的私有字段是数组类 ...

  10. C#静态类、静态构造函数,类与结构体的比较

    一.静态类 静态类是不能实例化的,我们直接使用它的属性与方法,静态类最大的特点就是共享. 探究 public static class StaticTestClass{    public stati ...