Robot Framework的标签是一个简单而又强大的分类机制,功能如下:

  • 标签在reports,logs以及测试数据中展示,显示关于测试用例的元数据信息
  • 用例的执行统计(total,passed,failed就是自动基于标签收集的)
  • 使用标签,可以包含或排除测试用例来执行
  • 使用标签,可以指定哪些是关键用例

标签的几种方式:

  • Force Tags:包含该设置的测试用例文件中所有用例都被指定打上这些标签
  • Default Tags:没有单独设置Tags的用例将被打上这些默认标签
  • [Tags] in the Test Case table:每个测试用例各自要打的标签,如果设置了,就不再包含Default Tags。所以可以通过设置一个空值来覆盖默认标签,也可用NONE。
  • --settag 命令行选项:所有通过包含该选项的命令执行的测试用例,除了已有的标签,都会再加上选项中指定的标签。

标签本身就是任意的文本,但是它们会被标签化:去除所有的空格,全部转为小写。如果一个用例被打上相同的标签多次,仅保留第一个。标签可以使用变量来创建,只要变量存在即可。

建议使用标签来指定环境或用户信息等这类元数据。

示例:

*** Test Cases ***

登录
[Tags] dltest
登录app 15000000001 mima 161a3797c824bccd58c *** Keywords ***
登录app
[Arguments] ${username} ${password} ${jPushId} ${ssohost}=${EMPTY}
log 开始登录
${data}= Create Dictionary loginName=${username} password=${password} jPushId=${jPushId}
${json}= Rest.post /rest/account/login ${data} form ${ssohost}
Should Be True ${json["success"]} Rest.post
[Arguments] ${uri} ${params} ${type}=form ${cur_host}=${EMPTY}
#设置代理服务器,方便调试
${proxy}= Create Dictionary http=http://1270.0.1:8888
${host}= Set Variable ${EMPTY}
: FOR ${tag} IN @{TEST TAGS}
\ ${host}= Evaluate $hosts.get($tag,"")
\ Run Keyword If "${host}"!="" Exit For Loop
#创建session,跨域模式,不需要维护Session
Run Keyword If "${cur_host}"!="" Create Session _session ${cur_host}
... ELSE Create Session _session ${host}
#根据请求数据的类型设置header
${headers}= Run Keyword If "${type}"=="form" Create Dictionary Content-Type=application/x-www-form-urlencoded
... ELSE IF "${type}"=="json" Create Dictionary content-Type=application/json
${response}= Post Request _session ${uri} ${params} headers=${headers}
Should Be Equal As Strings ${response.status_code} 200
log ${response.text}
${json}= Set Variable ${response.json()}
[Return] ${json}

原文地址:https://www.cnblogs.com/chengchengla1990/p/8922090.html

Robot Framework--标签Tag的更多相关文章

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

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

  2. python+robot framework实现测报告定制化和邮件发送

    前面已经介绍了python+robot framework自动化框架和基本原理的实现,详情请看 python+robot framework接口自动化测试 本章主要讲解报告已经产生那如何以自动化的方式 ...

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

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

  4. 使用Robot Framework做接口测试

    http://chuansong.me/n/1858477 1.RF框架 1.1 RF框架介绍Robot Framework 框架是一个通用的测试框架,一直是由诺西网络(Nokia Siemens N ...

  5. robot framework-tags(标签)实例

    robot framework的标签是一个简单而又强大的分类机制,功能如下: 标签在reports,logs以及测试数据中展示,显示关于测试用例的元数据信息 用例的执行统计(total,passed, ...

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

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

  7. Robot Framework and Ride

    Robot framework是诺西(NSN)开源的一套自动化测试工具,在通信设备自动化测试中很实用,它基于Python开发,主要模拟NMS网管配置数据到网元NODE,并读取配置看配置是否生效,ECI ...

  8. Robot Framework(九) 执行测试用例——基本用法

    3.1基本用法 Robot Framework测试用例从命令行执行,默认情况下,最终结果是XML格式的输出文件和HTML 报告和日志.执行后,可以组合输出文件,然后使用rebot工具进行后处理. 3. ...

  9. Robot Framework(十九) 附录

    6附录 6.1测试数据中的所有可用设置 6.1.1设置表 Setting表用于导入测试库,资源文件和变量文件,以及定义测试套件和测试用例的元数据.它可以包含在测试用例文件和资源文件中.请注意,在资源文 ...

随机推荐

  1. vs.Debug.vector迭代器报错(_ITERATOR_DEBUG_LEVEL)

    1.vs2017.Win7x64 std::vector<ULONG>,在 使用 *iter 取某个 ULONG时 报错,release不报错,报错信息: ZC:具体原理不明,暂时的解决方 ...

  2. C# Hook原理及EasyHook

    C# Hook原理及EasyHook简易教程 前言 在说C# Hook之前,我们先来说说什么是Hook技术.相信大家都接触过外挂,不管是修改游戏客户端的也好,盗取密码的也罢,它们都是如何实现的呢? 实 ...

  3. Tomcat部分知识点小结

    * Tomcat:web服务器软件     1. 下载:http://tomcat.apache.org/    2. 安装:解压压缩包即可. * 注意:安装目录建议不要有中文和空格    3. 卸载 ...

  4. 转:数据库实例自动crash并报ORA-27157、ORA-27300等错误

    rhel7.2上安装12C RAC数据库后,其中一个数据库实例经常会自动crash.查看alert日志发现以下错误信息: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Errors ...

  5. EAFP vs LBYL

    EAFP vs LBYL 检查数据可以让程序更健壮,用术语来说就是防御性编程.检查数据的时候,有EAFP和LBYL两种不同的编程风格,具体的意思如下: LBYL: Look Before You Le ...

  6. Vue.js 2.x 混入

    Vue.js 2.x mixins 混入 混入(mixins)是一种分发vue组件中可复用功能的非常灵活的方式.混入对象可以包含任意组件选项.当组件使用混入对象时,所有混入对象的选项将被混入该组件本身 ...

  7. jdk8新特性--使用lambda表达式的延迟执行特性优化性能

    使用lambda表达式的延迟加载特性对代码进行优化:

  8. 写一个RD一般需要多久?在迭代中新增的需求如何处理?如何做好项目管理?

    最近总是有些初入行的小伙们,经常会问我一些他们在工作工作的中疑问,我今天挑选出几个比较典型的问题和大家一起来讨论下. 问题如下: 写一个PRD一般需要多久? 在迭代中新增的需求如何处理? 如何做好项目 ...

  9. SVM支持向量机实例

    波士顿房价回归分析 1.导入波士顿房价数据集 ############################# svm实例--波士顿房价回归分析 ############################## ...

  10. 怎样修改element-ui中的样式?

    方法一 方法二 使用  /deep/ .homePage /deep/ .el-main { padding: 0;  } .homePage为我们要修改组件类名的父级组件样式类名..即使定义一个空的 ...