这是基于python的测试(通常)正在发生的事情。
==============================================================================
***Settings***
Variables variable_file.py
Library library.py
***Test Cases***
A Test Case
myTest ${some string} [I want to pass an object here]
=============================================================================
最后,我想传递一个在我的变量文件中定义的实际类对象。我看起来很远,没有找到超越字符串或列表的方式。有谁知道怎么做?
答案 0 :(得分:2)
默认情况下,$ {variable}是字符串,但它也可以包含对象。 并且您可以将其作为参数传递给关键字。
举一个简单的例子:
${mydict} = Create Dictionary a 1 b 2
=>然后你有$ {mydict} = {'a':'1','b':'2'}
然后您可以使用对象作为参数调用关键字。例如:
Dictionary Should Contain Key ${mydict} a
我正在使用这种方法来测试向我发送JSON的REST API。我将JSON对象存储在Robot变量中,并通过浏览dict的内容来检查结果。我在blog post中解释了一下。
答案 1 :(得分:1)
您可以按照User guide中的说明在变量文件中实例化对象变量 这是一个通用的例子
变量文件:
#var_file.py:
class foo(object):
a = "foo"
b = "bar"
MY_VAR = foo()
MY_SECOND_VAR = foo
测试用例文件:
#var_file.txt
*** Test cases ***
log variables
log ${MY VAR.a}
log ${MY VAR.b}
执行使用:
pybot -V var_file.py var_file.txt