robotframe work中 自定义python library使用global variable

在用robotframe work的小伙伴,有没有遇到这样一个问题:

    当你用python写一个libary时, 需要用到robotframe外面定义的global variable. 怎么处理?

    这时一般人的做法是通过参数传入。如下:

Robot文件:

Set  Env
    [Documentation]    配置环境
    Set Global Variable     ${TEST_SERVER}       www.baidu.com


python自定义关键字
   
Class Tmp:
    
   
      def  aaa(self,  server):
           print(server)

 在用例中,就直接使用:

aaa   ${TEST_SERVER}

 

个人感觉很不方便,这个设计不方便用户。我们可以直接在robot中调用robotframe的buildin方法来获取变量,如下

from robot.libraries.BuiltIn import BuiltIn

Class Tmp:
    
   
      def  aaa(self):
           AAA = BuiltIn().get_variable_value('${TEST_SERVER}')
           print(AAA)

 

同样的,builtin中也可以设置全局参数供外面使用。官方文档有说明,这里不介绍了。

posted @ 2023-02-02 09:32  Believer007  阅读(40)  评论(0编辑  收藏  举报