使用用意清晰的用例名称很重要,如果这样通常就不需要用文档关键字做额外的说明了。
如果需要记录测试用例的逻辑,这通常是用例中的关键字需要更好的命名的信号,需要改进这些关键字,而不是增加额外文档。最后要说的是,元数据,如上面例子中的环境和用户信息应该使用标签(tags)来进行定义。
2.2.4给测试用例做标记
在Robot Framework使用标签是一个简单,但是功能强大的测试用例分类机制。标签是自由文本,至少可用于以下用途:
标签在测试报告、日志中显示,当然,在测试数据中标签可以向测试用例提供元数据。用于测试用例的统计(总计、通过的、失败的测试用例都可以通过标签自动统计)。
使用标签,你可以筛选将要被执行的用例。
使用标签,你可以指定哪些是关键用例。
在本节只介绍了如何为用例设置标签,下面列出了不同的设置标签的方法。这些方法能够一起使用。
在Setting表中设置 Force Tags
使用该设置的测试用例文件中的所有测试用例都能获得指定的标签。如果在测试套件的初始化文件中使用该标签,子测试套件的所有测试用例也都获得该标签。
在Setting表中设置 默认 Tags
没有[Tags]设置的测试用例,将获得Default Tags。从Robot Framework的2.5版本开始,测试套件的初始化文件部分将不再支持该设置。
测试用例表中的[Tags]
测试用例经常用到这些标签。此外,它无法获取Default Tags定义的标签,因此它可能是通过使用空值来覆盖Default Tags。从Robot Framework 2.5.6开始,也使用NONE来替代Default Tags。
-- settag 命令行选项
所有已执行的测试用例都将获得此标签,原有使用的标签仍然起作用。。
设置标签与删除标签关键字这些内建的关键字能够用于在用例执行过程中修改标签。
标签是自由文本,但它们会被做标准化处理:都会被转换成小写字母且会去掉空格。如果一个测试用例获得多次相同的标签,除第一次以外的都会被删除。标签可以使用变量,假设这些变量存在。
Tagging example |
|||
Setting |
Value |
Value |
Value |
Force Tags |
req-42 |
|
|
Default Tags |
owner-john |
smoke |
|
Variable |
Value |
Value |
Value |
${HOST} |
10.0.1.42 |
|
|
Test Case |
Action |
Argument |
Argument |
No own tags |
[Documentation] |
This test has tags |
owner-john, smoke, req-42 |
|
No Operation |
|
|
|
|
|
|
With own tags |
[Documentation] |
This test has tags |
not_ready, owner-mrx, req-42 |
|
[Tags] |
owner-mrx |
not_ready |
|
No Operation |
|
|
|
|
|
|
Own tags with variables |
[Documentation] |
This test has tags |
host-10.0.1.42, req-42 |
|
[Tags] |
host-${HOST} |
|
|
No Operation |
|
|
|
|
|
|
Empty own tags |
[Documentation] |
This test has tags |
req-42 |
|
[Tags] |
|
|
|
No Operation |
|
|
|
|
|
|
Set Tags and Remove Tags Keywords |
[Documentation] |
This test has tags |
mytag, owner-john |
|
Set Tags |
mytag |
|
|
Remove Tags |
smoke |
req-* |