zoukankan      html  css  js  c++  java
  • 如何编写Robot Framework测试用例1---(基本格式篇)

    • 引子

    我们使用符合Robot Framework规范的一种表格语法来编写测试用例。用例一般会是下面这个样子

    如何编写Robot <wbr>Framework测试用例1---(基本格式篇)
    这样的表格存储到一个文件中,就是一组测试用例。RF支持多种格式,如HTML,TSV,纯文本等。它们长相大同小异,其实描述的都是一种内容。为了方便,推荐使用RIDE这个用例的编辑工具来编写测试用例,这些文本在RIDE环境下被打开长得是一个样子的。

    • 测试用例与文件的关系

    一个文件被称作一个测试套件(Test suit),期间可以包含多个测试用例。上图就是一个测试套件,里面包含2个测试用例,My Test 和AnotherTest。

    Test suit也能嵌套,比如同一个目录下的多个Test suit组成一个更高层的Test Suit,这些更高层的Test suit可以组成,这种嵌套的层数可以无限多。这种嵌套的用例组织形式在实际应用中很常见。

    • 测试用例文件的内部结构

    一个Test Suit文件包含四段内容他们分别是:Setting,Variable,Testcase,Keyword

    Setting部分主要的作用是:

    引用测试类库文件(test Library),引用资源文件(resource files),引用变量文件(variable files)。

    为测试套件或者测试用例定义元数据(metadata)
     
    Variable部分的主要作用是:
    定义测试用例中要使用的变量。
     
    TestCase部分的主要作用是:
    使用测试关键字来完成测试用例
     
    Keword部分的主要作用是:
    把现有关键字进行组合,生成更高一级的新关键字。
     
    • 对测试用例文本解析的规则

    如同各种编程语言一样,RF需要对它规定的这种表格语言进行解析,并用内部引擎把这些脚本语言解释成执行测试用例的具体操作。在解析过程中我们需要如下几点:

    1. 忽略字符:根据格式不同,忽略不符合格式的字符,规则很多,但是可以使用RIDE来规避,使用RIDE我们就可以不考虑这些。
    2. 转义符:RF使用 作为转义符。举个例子:${notvar} 代表字符串 ${notvar} 而不是一个变量
    3. 空格:RF会自动截断头尾的空格
    • 多行用例

    如果参数太多,需要换行,则需要在下一行的关键字处使用英文的省略号(...)表示参数属于同一个关键字。

    Test CaseActionArgumentArgumentArgument
    Example [Documentation] Documentation for this test case.
      ... This can get quite long...
      [Tags] t-1 t-2 t-3
      ... t-4 t-5  
      Do X one two three
      ... four five six
      ${var} = Get X 1 2
      ... 3 4 5
      ...

    从上表中我们可以看到:[Tags]有5个参数,而Do X有6个参数。

  • 相关阅读:
    LeetCode Single Number
    Leetcode Populating Next Right Pointers in Each Node
    LeetCode Permutations
    Leetcode Sum Root to Leaf Numbers
    LeetCode Candy
    LeetCode Sort List
    LeetCode Remove Duplicates from Sorted List II
    LeetCode Remove Duplicates from Sorted List
    spring MVC HandlerInterceptorAdapter
    yum
  • 原文地址:https://www.cnblogs.com/ievjai/p/4601275.html
Copyright © 2011-2022 走看看