首页 > 解决方案 > Robot Framework 是否支持 Gherkin 数据表?

问题描述

如何在 Robot Framework 中实现 Gherkin 数据表?

以下代码段应将两组 (n, is_prime) 参数传递给关键字,以验证:

is_prime(5) = 真

is_prime(6) = 假

*** Test Cases ***
Function should verify prime number
    Given I have a positive integer and is_prime() function
        | n | is_prime |
        | 5 | True     |
        | 6 | False    |
    When I check whether n is prime
    Then is_prime() should verify this

注意:这与Scenario Outline无关。我找到了https://gist.github.com/Tset-Noitamotua/8f06bd490918a56b0485630016aef60b并且可以使用示例表编写机器人测试。

这是一个 Python 函数,我用它来检查素数:

import math


def is_prime(num):
        if num < 2:
            return False
        sqr = int(math.floor(math.sqrt(num)))
        for i in range(2, sqr + 1):
            if num % i == 0:
                return False
        return True

标签: robotframeworkgherkinparameterized-tests

解决方案


简而言之:使用测试模板功能时不支持多行小黄瓜。

在 Robot Framework Gherkin 中,是单个测试用例上下文中的 Robot Framework 关键字。测试模板功能仅支持单个关键字。所以要么你从你的多行小黄瓜中创建一个单行关键字,要么接受这种组合是不可能的。


推荐阅读