剧本示例表(Example)

概念

示例表(Example)是场景大纲(Scenario Outline)中必要的部分。对于示例中的每一行数据,将执行一遍场景大纲的所有步骤,并将相应的数据填入参数中。

场景大纲中可以有零个或多个示例表。如果场景大纲中没有示例表格,那么在执行过程中甚至不会执行这个场景大纲。

通常情况下,对于某个特定场景大纲一个示例表就足够了。但是,在某些情况下,您想要将不同类别的多个示例行分组到不同表中,并用标签标记不同的示例表,这样就可以使用标签过滤,仅运行某些组以进行测试。有关如何在剧本(gherkin)文档中使用标签的更多信息,请参阅标签

使用示例表

右键场景大纲的标题插入示例表,如下:

要编辑示例表。只要双击表格的标题单元格或数据单元格,就可以将该行更改为编辑状态,如果用键盘将焦点切换到下一个单元格,则上一个单元格的更改将生效。

譬如有一个登录测试场景,需要验证不同情况下登录校验,就可以通过使用示例表大大减少工作量:

上面的场景出自样例CNodeJS社区UI自动化项目

链接示例表

除了直接编辑或者导入数据到示例表中外,还有另一种使用示例表的方法,即直接通过链接引用外部表格文件。右击场景大纲选择添加链接示例表,或者点击示例表右上角链接符号来选择要链接的表格文件。

目前仅支持csv表格文件。

链接示例表添加了以后效果如下:

文本视图对应的剧本代码为:

  # language: zh-CN
功能: 用户注册
对于首次进入的用户,登陆前进行注册,之后才可以登录进入

  场景大纲: 用户注册
    假如已经进入用户注册页面
    当用户名字段后输入"<username>"
    当密码字段后输入"<password>"
    当确认密码字段后输入"<confirm>"
    当电子邮箱字段输入"<email>"
    那么点击注册按钮
    例子: 
      #data_source: ..\data.csv

链接示例表展示的表格视图只是便于观察表格内容,而无法直接在CukeTest中编辑,只有打开原文件进行编辑。如果外部表格文件进行了修改,可以右击链接示例表刷新视图来更新显示。

您会注意到,链接示例行以带注释的“data_source”语句开头,然后是冒号,然后是文件路径。 文件路径可以是文件的绝对路径,也可以是相对于此剧本文件的相对路径。

注意:文件路径的分隔符与平台的兼容性。例如您如果用“/”作为路径的分隔,可以在所有平台适用,但如果用了反斜杠“\”,如“..\data.csv”,则只能在Windows平台下工作。

与文档字符串、步骤表的组合

文档字符串步骤表中,也可以使用<paramName>的格式指定参数,比如下面这个场景大纲:

场景大纲: 包含文档字符串和数据表的场景大纲
  假如使用文档字符串
    """
    <text>
    """
  当使用数据表
    | id | value  |
    | 1  | <data> |
  例子: 
    | text    | data  |
    | 一串文本字符串 | 一些表格值 |
    | 另一串文本字符串 | 另一些表格值 |

Example键盘导航

当示例表处于编辑模式时,您可以使用键盘在单元格之间进行导航。要移至下一个表格单元格,可以按Enter键或Tab键。要移至上一个表格单元格,可以按Shift-EnterShift-Tab键。

results matching ""

    No results matching ""