88.Robot Framework创建测试套

文章目录

  • 测试用例文件
  • 测试套目录
    • 初始化文件
  • 测试套名字和文档
  • 测试套元数据
  • 测试套setup和teardown

转载请注明原始链接:https://blog.csdn.net/a464057216/article/details/104478775

后续此博客不再更新,欢迎大家搜索关注微信公众号“测开之美”,测试开发工程师技术修炼小站,持续学习持续进步。

测试套用于组织测试用例和任务。

测试用例文件

测试用例文件的设置表(Settings)中,如下配置是关于测试套的:

  • Documentation:测试套文档。
  • Metadata:测试套元信息(key-value形式)。
  • Suite SetupSuite Teardown:测试套的setup、teardown。

设置名大小写不敏感,可以在设置名后面加一个冒号:使可读性更强。

测试套目录

测试套目录递归执行,执行规则为:

  • 以点号.和下划线_开头的文件或目录被忽略。
  • 名字中包含CVS(大小写一致)的目录被忽略。
  • 只处理支持的文件格式如.robot.txt.resource等,其他格式的文件被忽略。
  • 不包含任何测试用例的文件或目录被忽略。

初始化文件

测试用例文件生成的测试套设置,在设置表(Settings)中设置。目录生成的测试套的设置存在于一个名字格式为__init__.ext的初始化文件中,其中ext是Robot Framework支持的文件格式后缀,例如__init__.robot

初始化文件与测试用例文件类似,但是不支持测试用例表,设置表中只支持有限的设置。初始化文件中引入或创建的变量、关键字,在子测试套中不可见。如果要共享变量、关键字,可以定义在资源文件中,资源文件可以被测试套初始化文件、测试用例文件引入。

测试套初始化文件支持的设置如下:

  • DocumentationMetadataSuite SetupSuite Teardown:分别设置测试套的文档、元信息、setup、teardown。
  • Force Tags:指定的标签被添加到所有子测试套的测试用例中。
  • Test SetupTest TeardownTest Timeout:所有子测试套的测试用例的默认setup、teardown、超时,会被子测试套的测试用例的配置覆盖。使用的关键字必须在子测试套的测试用例中可见,仅仅在测试套初始化文件中定义或引用是不行的。
  • Task SetupTask TeardownTask Timeout:配置任务的setup、teardown、超时时间。
  • Default TagsTest Template:测试套初始化文件不支持。

测试套初始化文件举例:

*** Settings ***
Documentation    Example suite
Suite Setup      Do Something    ${MESSAGE}
Force Tags       example
Library          SomeLibrary

*** Variables ***
${MESSAGE}       Hello, world!

*** Keywords ***
Do Something
    [Arguments]    ${args}
    Some Keyword    ${arg}
    Another Keyword

测试套名字和文档

测试套名字根据测试用例文件名或测试套目录名生成,忽略扩展名,下划线用空格替代,如果测试用例文件名或测试套目录名为全小写则转换为首字母大写形式。例如,some_tests.robot的测试套名是Some TestsMy_test_directory的测试套名是My test directory
测试用例文件名或测试套目录名可以包含数字前缀,控制测试套执行顺序。前缀与文件名或目录名用两个下划线分割,生成测试套名字的时候自动忽略前缀和两个下划线。例如,01__some_tests.robot02__more_tests.robot分别生成生成测试套Some TestsMore Tests,前者先执行。

测试套文档可以使用简单的格式化,比如*…*加粗、_..._斜体:

*** Settings ***
Documentation    An example test suite documentation with *some* _formatting_.
...              See test documentation for more documentation examples.

最高级的测试套名字和文档可以通过命令行选项--name--doc修改。

测试套元数据

测试套元数据显示在测试报告和日志中。元信息在设置表(Settings)中的语法是Metadata key value。元信息的值可以使用HTML或变量,可以分割到多个单元格(多个单元格用空格拼接到一起)或者分割到多行(多个单元格用换行符拼接到一起)。元数据举例:

*** Settings ***
Metadata    Version        2.0
Metadata    More Info      For more information about *Robot Framework* see http://robotframework.org
Metadata    Executed At    ${HOST}

最高级的测试套元数据可以通过命令行选项--metadata修改。

测试套setup和teardown

所有的测试套都可以有setup和teardown。对于测试套目录生成的测试套,setup和teardown在初始化文件中定义。
如果测试套的setup执行失败,则所有子测试套中的测试用例都不会执行,直接标记失败。利用这个特性,可以检查测试用例的前置条件是否满足。
即使测试套的setup失败,teardown也会执行。如果teardown失败,所有测试用例都被标记失败,即使测试用例本身执行成功。如果teardown中某个关键字执行失败,剩余的关键字会继续执行。
测试套setup、teardown执行的关键字名可以是变量。这样在不同的测试环境上,可以通过命令行选项选择执行不同的setup、teardown流程。

接下来我们通过89.Robot Framework使用测试库学习如果使用测试库中的关键字。

你可能感兴趣的:(自动化测试)