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. PHP实用小程序(一)

    <? //设置路径(默认当前php文件所在路径) $basedir = "d:/inetpub/wwwroot"; $textrows = "20"; $ ...

  2. AttributeCollection.Add(String, String) Method

    <%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Trans ...

  3. HDU5920【模拟】

    模拟题这种东西啊~就是自己读题,自己打,没有别的方法...贴份6000+b的code跑: #include <bits/stdc++.h> using namespace std; //t ...

  4. 如何实现一个无边框Form的移动和改变大小(二)

    接着上文:这里写链接内容 我们来说说一个比较复杂的实现, 效果如图: 注意为了能够凸显没有NC(NotClient)区域,我们额外用了3个panel分别放在窗体的左右和下部.用来模拟客户自己的控件. ...

  5. java并发编程(一)

    java并发编程(一) 线程基础 在Java代码中,单独创建线程,都需要使用类java.lang.Thread,通常可以通过集成并扩展Thread的run()方法,也可以来创建一个Thread,将一个 ...

  6. PJzhang:国内常用威胁情报搜索引擎说明

    猫宁!!! 参考链接: https://www.freebuf.com/column/136763.html https://www.freebuf.com/sectool/163946.html 如 ...

  7. ADO学途 four day 数据库左右连接

    数据库的多表操作 数据库用于存放用户数据,用户数据库的数据又会有不同表来存放不同类型的数据,这这是就会产生多 张表来满足需求.列如,部门表有市场部,技术部,行政部等.,子表就有员工具体信息表用来存放员 ...

  8. slice方法可以将“类似数组的对象”变成真正的数组 (遇到时候再研究一次)

    典型的“类似数组的对象”是函数的arguments对象,以及大多数 DOM 元素集,还有字符串. // arguments对象 function args() { return arguments } ...

  9. python错误之RuntimeError: dictionary changed size during iteration

    pythonn报错信息: C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Ad ...

  10. IOS蓝牙连接 初步简单封装使用

    最近写一个蓝牙项目 初步实现一下蓝牙设备连接交互,后期继续完善.... 1.连接蓝牙相关操作 BlueToothManger.h // // BlueToothManger.h // SmartRob ...