robotframework笔记27

时间:2022-02-07 15:36:05

文档格式

可以使用简单的HTML格式 测试套件 , 测试用例 和 用户关键字 文档和 免费测试套件 元数据 在测试数据,以及当 记录测试 库 。 格式类似于大多数使用的风格 *,它被设计成可以理解为纯文本, 在HTML转换。

\N代表换行

在测试数据换行

当记录测试套件、测试用例和关键词或添加元数据 测试套件,可以手动添加换行使用 文字换行符 字符序列 ( \ n )。

*** Settings ***
Documentation First line.\n\nSecond paragraph, this time\nwith multiple lines.
Metadata Example Value\nin two lines

手动添加换行长文档需要一些努力和额外的 人物也使文档难以阅读。 从机器人 2.7框架,这不是必需的,自动换行插入 之间的 继续行文件和元数据 。 在实践中这 意味着上面的例子也可以写成如下。

*** Settings ***
Documentation
... First line.
...
... Second paragraph, this time
... with multiple lines.
Metadata
... Example
... Value
... in two lines

没有自动换行符添加如果一行已经以文字换行符结束 或者如果它结束了 逃避反斜杠 。 如果文档或元数据 定义在多个列,细胞在同一行连接在一起 与空间。 这种分裂尤其是可以是一个好主意 使用 HTML格式 和列是狭窄的。 不同的方法来分离 文档说明在下面的例子中,所有测试用例 有相同的两个文档。

*** Test Cases ***
Example 1
[Documentation] First line\n Second line in multiple parts
No Operation Example 2
[Documentation] First line
... Second line in multiple parts
No Operation Example 3
[Documentation] First line\n
... Second line in\
... multiple parts
No Operation

文档在测试库

与库文件正常换行就足够了 例子如下关键字的文档会产生相同的结果 测试套件的文档在前一节中。

def example_keyword():
"""First line. Second paragraph, this time
with multiple lines.
"""
pass

段落

2.7.2从机器人框架,所有常规的文本格式化的HTML 文档表示为段落。 在实践中,行分开 由一个换行符将结合在一个段落是否无关 手动或自动添加换行符。 多个段落可以分离 用一个空行(即两个换行),也表、列表和其他 特殊格式化块后面的部分中讨论一个段落结束。

例如,下面的测试套件或资源文件文档:

*** Settings ***
Documentation
... First paragraph has only one line.
...
... Second paragraph, this time created
... with multiple lines.

将在HTML格式为:

第一段只有一行。

第二段,这次创建多个行。

请注意

2.7.2处理段落之前是不一致的。 在文档 生成与 Libdoc 结合段落,但在 他们没有文件中所示的日志和报告。

内联样式

文档的语法支持内联样式 大胆的 斜体 和 代码 。 粗体文本可以通过创建一个星号之前和之后 例如,选词 *这是大胆的* 。 斜体 风格类似的工作,但使用是一个特殊字符 例如,强调_italic_ 。 也有可能 粗斜体的语法 _ * _ *粗斜体 

创建代码风格使用双引号 “代码” 。 结果是等宽的文本与浅灰色背景。 支持代码 风格是新的2.8.6机器人框架。

星号、下划线或双引号,或在中间的一个字, 不开始格式化,但是标点符号之前还是之后 是允许的。 当多个线形成 段 可以,所有内联样式 跨越到多个行。

内联样式的例子
无格式 格式化
*大胆的* 大胆的
_italic_ 斜体
_ * _ *粗斜体 粗斜体
“代码” 代码
*大胆的*,然后_italic_最后“一些代码' ' 大胆的 ,然后 斜体 最后 一些代码
这是*大胆\ n 
在多个\ n 
行*。
这是 大胆的 
在多个 
行 

url

会自动转换成字符串看起来像所有url 可点击的链接。 此外,结尾的url扩展 jpg , jpeg , . png , gif 或 bmp格式 (不区分大小写)将自动创建图像。 为 例如,url像http://example.com 变成了链接, http:///host/image.jpg 和 文件:/ / / / chart.png路径 成图像。

url链接的自动转换是适用于所有数据 在日志和报告,但创建图像做只是为了测试套件, 测试用例和关键字的文档,测试套件的元数据。

定制的链接和图片

从机器人Framework 2.7开始,可以创建自定义链接 使用特殊的语法和嵌入图像 (链接|内容) 。 这就产生了 一个链接或图像不同 链接 和 内容 图像。 他们被认为是图像,如果他们有相同的图像扩展 特殊用 url 。 周围的方括号和管道的性格 各部分之间在所有情况下都是强制性的。

与文本内容

如果既不 链接 也不 内容 是一个图像,最终的结果是 一个正常的链接, 链接 是链接目标 内容 可见文本:

[file.html|this file] -> <a href="file.html">this file</a>
[http://host|that host] -> <a href="http://host">that host</a>

与图像内容

如果 内容 是一个图像,得到一个链接,链接的内容是一个 的形象。 目标是由链接 链接 它可以是文本或图像:

[robot.html|robot.png] -> <a href="robot.html"><img src="robot.png"></a>
[image.jpg|thumb.jpg] -> <a href="image.jpg"><img src="thumb.jpg"></a>

图片和标题文本

如果 链接 是一个图像,但 内容 不是,语法创建一个 图片的地方 内容 标题文本显示鼠标时结束了吗 图像:

[robot.jpeg|Robot rocks!] -> <img src="robot.jpeg" title="Robot rocks!">

标题

如果文档变得更长,通常把它变成一个好主意 部分。 2.7.5从机器人框架,可以分开 章节标题使用语法 = =我的标题 的数量 等号表示的标题:

= First section =

== Subsection ==

Some text.

== Second subsection ==

More text.

= Second section =

You probably got the idea.

注意,只有三个标题支持水平和之间的空间 等号和标题文本是强制性的。

表创建使用管道周围的字符和空格 行分隔符一样列分隔符和换行。 头 细胞周围的细胞可以创建的内容以同样的迹象 和可选的空间 =头= 或 =头= 。 表 细胞也可以包含链接和格式如粗体和斜体:

| =A= |  =B=  | = C =  |
| _1_ | Hello | world! |
| _2_ | Hi |

创建的表总是有一个薄的边界和正常文本左对齐。 标题单元格中的文本是大胆和集中。 空细胞自动 添加行同样长。 例如,上面的例子 在HTML这样的格式:

一个 B C
1 你好 世界
2  

请注意

支持表头2.8.2机器人框架中的一个新特性。

列表

列表是由开始与一个连字符和空间(“-”)。 列表项 可以分成多行缩进继续与一个或多个行吗 空间。 一条线,不从”——“开始,不缩进列表结束:

Example:
- a list item
- second list item
is continued This is outside the list.

上面的HTML文档格式是这样的:

例子:

  • 列表项
  • 第二个列表项是继续

这是在名单之外。

请注意

2.7.2支持格式列表添加。 在此之前, 相同的语法了 Libdoc 从结合线 段落,所以最终的结果是相似的。 支持分裂 在第2.7.4列表项添加到多个行。

6.4.9预格式化的文本

从机器人Framework 2.7开始,可以嵌入块 预格式化的文本文档。 格式化块是由 线用“|”开始,一个又一个空间被强制管性格 除了否则空行。 “|”开始序列将被删除 从生成的HTML,但所有其他的空格是保留。

在下面的文档,中间的两个线形成一个格式化 转换为HTML时块:

Doc before block:
| inside block
| some additional whitespace
After block.

上面的文档格式是这样的:

医生之前:

inside block
some additional whitespace

块之后。

当记录套件、测试或关键字在机器人框架测试数据, 有多个空格需要与一个反斜杠转义 防止 忽略空格 。 上面的例子就这样写:

Doc before block:
| inside block
| \ \ \ some \ \ additional whitespace
After block.

水平标尺

水平的统治者( <人力资源> 标签)可以单独的大 从对方的部分,它们可以由三个或三个以上 连字符就行:

Some text here.

---

More text...

上面的文档格式是这样的:

一些文本。


更多的文本…

时间格式

机器人有自己的时间格式框架灵活使用和容易 理解。 它使用一些关键字(例如, 内装式 关键字 睡眠 和 等到关键词成功 ), DateTime 图书馆, 超时 。

时间数量

时间总是可以作为一个普通的数字,在这种情况下 解释是秒。 整数和浮点数 工作,可以使用实数或字符串 含有数值。

时间随着时间的字符串

代表时间作为一个字符串意味着使用格式等 2分钟42秒 通常,这是更容易理解 只是有值为秒。 例如,不是那么容易 了解一段时间多久 4200年 在几秒钟内,但 1小时10分钟 马上是清楚的。

这种格式的基本思想是首先一个数字,然后一个文本 指定这个数字代表什么时间。 数字可以是 整数或浮点数,整个格式和空间 不敏感,可以添加 - - - - - - 前缀指定负 次了。 可用的时间说明符是:

  • 天,天,d
  • 小时,小时,h
  • 分钟,分钟,分钟,分钟,m
  • 秒,第二,秒秒,s
  • 毫秒,毫秒,米尔斯女士

例子:

1 min 30 secs
1.5 minutes
90 s
1 day 2 hours 3 minutes 4 seconds 5 milliseconds
1d 2h 3m 4s 5ms
- 10 seconds

时间为“定时器”字符串

从机器人框架2.8.5,时间也可以在计时器 格式 hh:mm:ss.mil 。 在这种格式中两小时和毫秒 是可选的,前导和尾随零可以离开时不 有意义,可以通过添加和消极的倍 - - - - - - 前缀。 例如,计时器和时间字符串值是相同的:

计时器和时间字符串的例子
计时器 时间的字符串
00:00:01 1秒
01:02:03 1小时2分钟3秒
1:00:00 1小时
100:00:00 100小时
00:02 2秒
42:00 42分钟
00:01:02.003 1分钟2秒3毫秒
00:01.5 1.5秒
01:02.345 - 1分2秒345毫秒

布尔参数

许多关键字在机器人框架 标准库 接受参数 处理为布尔值true或false。 如果这样一个论点 一个字符串,它被认为是错误的如果它是否为空或不区分大小写 等于 假 或 没有 。 其他字符串被认为是真正的不管 他们的价值,和其他使用相同参数类型进行测试 在Python中规则 。

关键字也可以接受比其他特殊字符串 假 和 没有 这是 被认为是假的。 例如, 内装式 关键字 应该是真的 使用 在下面的例子中认为字符串 没有值 给其 值 论点是错误的。

*** Keywords ***
True examples
Should Be Equal ${x} ${y} Custom error values=True # Strings are generally true.
Should Be Equal ${x} ${y} Custom error values=yes # Same as the above.
Should Be Equal ${x} ${y} Custom error values=${TRUE} # Python `True` is true.
Should Be Equal ${x} ${y} Custom error values=${42} # Numbers other than 0 are true. False examples
Should Be Equal ${x} ${y} Custom error values=False # String `false` is false.
Should Be Equal ${x} ${y} Custom error values=no # Also string `no` is false.
Should Be Equal ${x} ${y} Custom error values=${EMPTY} # Empty string is false.
Should Be Equal ${x} ${y} Custom error values=${FALSE} # Python `False` is false.
Should Be Equal ${x} ${y} Custom error values=no values # Special false string in this context.

注意,机器人框架2.9之前处理布尔参数 不一致的。 一些关键字遵循以上规则,但其他人简单 考虑所有非空字符串,包括 假 和 没有 ,是真的。

内部API

从机器人Framework 2.7开始, API文档 分别举办 在优秀的 阅读文档 服务。 如果你不确定如何使用 某些API或使用它们向前兼容,请发送一个问题 来 邮件列表 。