机器人框架:有没有办法编写动态测试用例?

时间:2017-07-03 02:13:26

标签: robotframework

我是机器人框架的新手。我想动态创建测试用例,而不需要输入键值驱动方法。

找到了一些建议如下的材料:

suite = TestSuite('Example suite', doc='...')
tc = TestCase('Example test')
tc.add_step(TestStep('Log', args=['Hello, world!'])
suite.add_test(tc)

我在测试用例类中看不到add_step,会继续环顾四周,看看是否有任何解决方案。

1 个答案:

答案 0 :(得分:4)

TestSuite对象具有keywords属性,该属性本身具有create方法,可用于创建新关键字。

robot framework api documentation提供此example

from robot.api import TestSuite

suite = TestSuite('Activate Skynet')
suite.resource.imports.library('OperatingSystem')
test = suite.tests.create('Should Activate Skynet', tags=['smoke'])
test.keywords.create('Set Environment Variable', args=['SKYNET', 'activated'], type='setup')
test.keywords.create('Environment Variable Should Be Set', args=['SKYNET'])

上面给出的测试就像你写的那样:

*** Settings ***
Library    OperatingSystem

*** Test Cases ***
Should Activate Skynet
    [Tags]    smoke
    [Setup]    Set Environment Variable    SKYNET    activated
    Environment Variable Should Be Set    SKYNET