机器人框架如何在报表输出的数据驱动测试中为每个测试用例设置自己的名称

时间:2016-11-28 13:06:00

标签: robotframework data-driven-tests

您能帮我解决一下如何为每个测试用例设置自己的名称到Data Driven,以使报告更具可读性。

REAL REPORT示例:

状态:失败(严重) 消息:发生了几次故障:

1)******************************  失败:收到错误的价值。预期:0。实际:3

2)******************************  失败:收到错误的价值。预期:0。实际:3

3)******************************  失败:收到错误的价值。预期:0。实际:3

但从输出中不清楚细节。我希望有一些细节而不是***************,

我需要:

状态:失败(严重) 消息:发生了几次故障:

1)如果param为空  失败:收到错误的价值。预期:0。实际:3

2)如果参数超出范围  失败:收到错误的价值。预期:0。实际:3

3)如果param是更多的东西  失败:收到错误的价值。预期:0。实际:3

对于数据驱动的每个表格行,我将这些详细信息作为$ {comment}。能否帮助我如何为数据驱动内的每个测试用例分配它以获得更易理解的报告。

数据驱动测试示例

st_ddt_test_example
    [Template]    st_ddt_test_example_keyword  
    # comment #                     # value setup #  # value expected #
    if param is empty                   0                    0
    if param is out of range           100                   0
    if param is something more         -8                    0

1 个答案:

答案 0 :(得分:2)

您的关键字控制显示的错误,因此只需将名称包含在错误消息中。

以下是一个例子:

*** Keywords ***
Example
    [Arguments]    ${comment}  ${1}    ${2}
    should be equal    ${1}    ${2}
    ...    ${comment}: '${1}' != '${2}'
    ...    False

*** Test Cases ***
Test 1
    [Template]    example
    Test 1.0      a    b
    Test 1.1      b    c
    Test 1.2      c    d

运行时,测试会产生以下结果:

Test 1                                                                | FAIL |
Several failures occurred:

1) Test 1.0: 'a' != 'b'

2) Test 1.1: 'b' != 'c'

3) Test 1.2: 'c' != 'd'