代码之家  ›  专栏  ›  技术社区  ›  Rakesh

全局变量值不反映在函数之间

  •  0
  • Rakesh  · 技术社区  · 8 年前

    我想计算不同函数之间更新的累计时间。

    测试用例文件

    *** Settings ***
    Suite Setup         Pre_Execution_Steps
    Suite Teardown      Post_Execution_Steps
    Library             DateTime
    Library             Extended Selenium2Library
    
    *** Test Cases ***
    Test Case 1
        Function A
    

    资源文件

    *** Settings ***
    Library             DateTime
    Library             ExtendedSelenium2Library
    
    *** Keywords *** 
    Pre_Execution_Steps
         Set Global Variable    ${WAIT_TIME}    00:00:00.000
    
    Function A:
         ${WAIT_TIME}=    Add Time To Time    ${WAIT_TIME}    00:00:02.001    result_format=timer           
         Log ${WAIT_TIME}
         ${WAIT_TIME}=    Add Time To Time    ${WAIT_TIME}    00:00:02.001    result_format=timer
         Log ${WAIT_TIME}
    
    Post_Execution_Steps
         Log    Wait time is ${WAIT_TIME}
    

    当我执行测试用例时,全局变量${WAIT\u TIME}值在函数A中得到更新。但是${WAIT\u TIME}值虽然是全局变量,但不会反映在执行后的步骤中。打印默认值00:00:00.000

    任何意见/建议都会很有帮助

    1 回复  |  直到 8 年前
        1
  •  2
  •   Bryan Oakley    8 年前

    我认为 Function A: ,则, ${WAIT_TIME} 设置为新值后,将被视为本地。要查看全局变量的更改,需要调用 Set global variable 在…内 功能A: