Automated tests 如何在RobotFramework中将对象变量传递给测试用例?
下面是我基于python的测试(一般)的情况Automated tests 如何在RobotFramework中将对象变量传递给测试用例?,automated-tests,robotframework,Automated Tests,Robotframework,下面是我基于python的测试(一般)的情况 ============================================================================== ***Settings*** Variables variable_file.py Library library.py ***Test Cases*** A Test Case myTest ${some string} [I
==============================================================================
***Settings***
Variables variable_file.py
Library library.py
***Test Cases***
A Test Case
myTest ${some string} [I want to pass an object here]
=============================================================================
最后,我想传递一个在变量文件中定义的实际类对象。我已经四处张望,没有找到传递字符串或列表以外任何内容的方法。有人知道怎么做吗?默认情况下,${variable}是字符串,但它也可以包含对象。 您可以将其作为参数传递给关键字 举一个简单的例子:
${mydict} = Create Dictionary a 1 b 2
=>那么您就有了${mydict}={'a':'1','b':'2'}
然后你可以用你的对象作为参数调用关键字。例如:
Dictionary Should Contain Key ${mydict} a
我正在使用这种方法来测试发送JSON的RESTAPI。我将JSON对象存储在Robot变量中,并通过探索dict的内容来检查结果。我在一篇文章中对此进行了一点解释。您可以在变量文件中实例化对象变量,如中所述 下面是一个通用示例 变量文件:
#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