了解如何在Robot Framework中编写测试数据

时间:2019-03-26 13:21:02

标签: robotframework

我是Robot Framework的新手,正在阅读其文档。在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!

*** Keywords ***
My Keyword
    [Arguments]    ${path}
    Directory Should Exist    ${path}

我无法理解各个部分中的 [文档] /示例测试和[参数] $ {path} 的意思-似乎没有明确的解释吗?

由于指南不是从基本的“ Hello World” 程序开始的,我该如何学习这些基本语法?

1 个答案:

答案 0 :(得分:3)

概述

在测试用例或关键字定义中,方括号中的值称为设置。它们在《机器人框架用户指南》的Settings in the test case tableSettings in the keyword table部分中有记录。

机器人支持固定数量的设置,因此您不能仅将任何单词放在方括号内。如果不是支持的设置之一,则方括号中一行的第一个单词中的任何内容都会引发错误。

测试用例支持设置[Documentation][Tags][Setup][Teardown][Template][Timeout]

关键字支持设置[Documentation][Tags][Arguments][Return][Teardown][Timeout]

[文档]

您猜想,[Documentation]用于设置测试用例或关键字的文档。可在机器人框架用户指南的Test case name and documentationUser keyword name and documentation

部分中找到更多信息。

使用[Documentation]代替注释的优点在于,该文档将显示在报告和日志中,并将包含在libdoctestdoc生成的文档中。

[参数]

[Arguments]是您指定关键字参数的方式。您不能将此设置用于测试用例。它仅适用于关键字,并记录在标题为User keyword arguments

的部分中

例如,如果您编写一个接受参数“ first_name”和“ last_name”的关键字,则可以这样定义[Arguments]设置:

*** Keywords ***
Example Keyword
    [Arguments]  ${first_name}  ${last_name}
    log  Hello, my name is ${first_name} ${last_name}

在关键字中,第一个参数将分配给局部变量${first_name},第二个参数将分配给${last_name}