首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >可以用Python编写Robot Framework测试(而不是关键字)吗?

可以用Python编写Robot Framework测试(而不是关键字)吗?
EN

Stack Overflow用户
提问于 2014-04-09 02:53:02
回答 1查看 4.6K关注 0票数 2

有没有可能用Python而不是.txt格式编写Robot Framework测试?

在幕后,它看起来像是pybot.txt测试转换成Python,所以我希望这只是导入正确的库并继承正确的类的问题,但我还没有弄清楚如何做到这一点。

(我们已经有了一大堆套件,并且有两种格式的关键字,但有时RF语法使得在Python中做一些简单的事情变得非常困难。我知道,可以只为每个测试编写一个Python关键字,并以相同的方式添加“包装”设置和拆卸函数,但这似乎很麻烦。)

EN

回答 1

Stack Overflow用户

发布于 2019-03-26 10:23:48

Robotframework不支持直接用python编写测试用例。我已经提交了增强PR,请在此处查看

https://github.com/robotframework/robotframework/issues/3128

但我已经尝试通过将所有测试用例逻辑转移到python代码,并使RF测试用例成为它们的入口点来做到这一点。

下面是一个例子。

我们可以创建一个python文件来包含所有测试逻辑和设置/拆卸逻辑,如下所示

# *** case0001.py *****
from SchoolClass import SchoolClass
schCla = SchoolClass()

class case0001:

    def steps(self):
        print('''\n\n***** step 1 ****  add school class \n''')
        self.ret1 = schCla.add_school_class('grade#1', 'class#1', 60)
        assert self.ret1['retcode'] == 0



        print('''\n\n***** step 2 ****  list school class to check\n''')

        ret = schCla.list_school_class(1)
        schCla.classlist_should_contain(ret['retlist'],
                                    'grade#1', 
                                    'class#1',
                                    60,
                                    self.ret1['id'])


    def setup(self):
        pass

    def teardown(self):
        schCla.delete_school_class(self.ret1['id'])

然后我们创建一个机器人文件。其中所有RF测试用例都是相同的形式,并且只是作为上述python测试用例的入口点。

像这样

*** Settings ***
Library    cases/case0001.py   WITH NAME  C000001
Library    cases/case0002.py   WITH NAME  C000002


*** Test Cases ***

add class - tc000001
    [Setup]   C000001.setup
    C000001.steps
    [Teardown]    C000001.teardown

add class - tc000002
    [Setup]   C000002.setup
    C000002.steps
    [Teardown]    C000002.teardown

您可以看到,通过这种方式,RF测试用例是相似的。我们甚至可以创建一个工具,通过扫描Python测试用例来自动生成它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22945792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档