使用robotframework访问静态类变量?
是否可以从载入robot框架的库中访问静态类变量 例如,假设我在.robot文件中包含以下python库:使用robotframework访问静态类变量?,robotframework,Robotframework,是否可以从载入robot框架的库中访问静态类变量 例如,假设我在.robot文件中包含以下python库: foo = 'value' class MyClass(self): bar = 'value' 在包含它的.robot文件中是否有方法引用foo或bar?您可以通过获取对原始python模块的引用,然后使用获取值来获取这些值 例如,考虑一个名为MyLibrary .p::/p>的库。 # MyLibrary.py foo = "this is foo" class MyCl
foo = 'value'
class MyClass(self):
bar = 'value'
在包含它的.robot文件中是否有方法引用foo或bar?您可以通过获取对原始python模块的引用,然后使用获取值来获取这些值
例如,考虑一个名为MyLibrary .p::/p>的库。
# MyLibrary.py
foo = "this is foo"
class MyClass(object):
bar = "this is bar"
您可以通过获取库的句柄来访问foo和bar:
*** Settings ***
| Library | MyLibrary.py
*** Test Cases ***
| Example of accessing variables in a library
| | ${lib}= | Get Library Instance | MyLibrary
| |
| | Should be equal as strings | ${lib.foo} | this is foo
| | Should be equal as strings | ${lib.MyClass.bar} | this is bar
您应该将
ROBOT\u LIBRARY\u SCOPE='GLOBAL'
添加到MyClass中。如果没有,则Get Library Instance
将创建MyClass的第二个实例。因此,即使robotframework中具有${object.variable}访问功能,它也不适用于仅“libraries”的对象?@kimon:在仔细考虑这个问题后,我想出了一个解决方案。我已经编辑了我的答案。