Robot Framework(五):如何创建测试数据

主要介绍RF基本的语法,变量,创建测试套件、测试case

测试数据分类

Robot Framework中数据通过section来区分,支持的section如下:

section

作用

Settings

  1. 导入测试库,资源文件和变量文件等;
  2. 定义测试套件和测试用例的元数据(metadata)

Variables

定义在测试数据任意位置都可以使用的变量

Test Cases

创建测试用例

Tasks

创建测试任务

Keywords

创建用户自定义的关键字

Comments

注释信息

说明:

  1. 推荐的section头格式为 *** Settings ***,但是是大小写敏感的,中间的空格是可选的,星号可以有很多个,但是至少要有一个*号;
  2. section的名称可以为单数,比如*setting;
  3. section行中也可以保护其它附加数据,但是要用不同的分隔符区分,一般用两个以上的空格。
  4. 官网提供的example3:

 

支持的文件格式

Robot Framework测试数据中支持纯文本格式、TSV(tab-separated values,类似于excel )格式、HTML格式等。

最常用的数据格式就是纯文本格式,也就是以.robot后缀名结尾的文件,.txt为扩展名结尾的文件也可以兼容。纯文本格式的文件是逐行解析的,在每一行中关键字和参数通过分隔符进行区分,分隔符可以是空格、管道符(“|”)和tab键。

空格分割

用2个以上的空格或者1个以上的tab键作为关键字和参数之间的分隔符,推荐用4个空格,例如:

*** Settings ***

Documentation    Example using the space separated plain text format.

Library            OperatingSystem

 

*** Variables ***

${MESSAGE}       Hello, world!

 

*** Test Cases ***

My Test    

[Documentation]    Example test    Log    ${MESSAGE}    

My Keyword    /tmp

Another Test    

Should Be Equal    ${MESSAGE}    Hello, world!

 

*** Keywords ***

My Keyword    

[Arguments]    ${path}    

Directory Should Exist    ${path}

 

注意:由于使用空格作为分隔符,那么如果是空的参数或者包含空格的参数就需要用反斜杠转义,或者使用内置的变量${EMPTY} 和${SPACE}

​​​​​​​管道符分割

当关键字有很多参数,而且参数还包含空格的话,使用空格分割的话脚本写起来就会很繁琐,可读性也差,这时候就可以使用管道分隔符,如:

| *** Settings ***   |

| Documentation      | Example using the pipe separated plain text format.

| Library            | OperatingSystem

 

| *** Variables ***  |

| ${MESSAGE}         | Hello, world!

 

| *** Test Cases *** |                 |              |

| My Test            | [Documentation] | Example test |

|                    | Log             | ${MESSAGE}   |

|                    | My Keyword      | /tmp         |

| Another Test       | Should Be Equal | ${MESSAGE}   | Hello, world!

 

| *** Keywords ***   |                        |         |

| My Keyword         | [Arguments]            | ${path} |

|                    | Directory Should Exist | ${path} |

 

如果参数中本身有|符号的话就需要用反斜杠转义,如:

| *** Test Cases *** |                 |                 |                      |

| Escaping Pipe      | ${file count} = | Execute Command | ls -1 *.txt \| wc -l |

|                    | Should Be Equal | ${file count}   | 42                   |

 

注意:

  1. 每行开头的管道符|是必须要有的,结尾的可有可无;
  2. 管道符可以不用和上一行的对齐

编辑器

纯文本格式的文件可以用通用的文本编辑器或者IDE进行编辑。支持Robot Framework有:

*** Settings ***

Documentation    Example using the space separated plain text format.

Library            OperatingSystem

 

*** Variables ***

${MESSAGE}       Hello, world!

 

*** Test Cases ***

My Test    

[Documentation]    Example test    Log    ${MESSAGE}    

My Keyword    /tmp

Another Test    

Should Be Equal    ${MESSAGE}    Hello, world!

RIDE是单独的编辑工具,有一些是以插件的形成提供给文本编辑器,接下来我们主要用RIDE进行说明。

注意:不管使用任何的编辑器,纯文本格式的文件中如果包含非ASCII码的字符时必须要用UTF-8编码保存文件。否则执行测试用例时会报错

​​​​​​​其它扩展文件

Robot Framework 建议的纯文本扩展名为.robot,也可以是.txt。但是3.1以后版本的Robot Framework,后缀名为.txt的文件不再自动的解析,必须用--extension显示的指定解析txt文件,否则执行的时候会有如下的警告信息:

如果想去掉警告信息的话有2种方法:

  1. 将文件后缀名改为.txt
  2. robot命令执行时加上--extension参数,显示指定文件的后缀名

robot --extension robot path/to/tests        # Only parse *.robot files

robot --extension ROBOT:TXT path/to/tests    # Parse *.robot and *.txt files

 

数据解析规则

忽略的数据

Robot Framework解析数据文件的时候,以下内容会忽略:

  1. 注释
  2. 空行
  3. 单个的转义字符
  4. 以#开头的,也是注释
  5. 行尾未转义的空单元格
  6. 第一个section开始之前的所有数据
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值