【发布时间】:2016-04-26 15:42:55
【问题描述】:
我对 Robot Framework 还很陌生,我写了一些关键字,它们调用 .py 文件中的方法。所有这些 Python 方法都放在 llk_machine.py 文件中的一个类中。
下面是我的TestCase文件:
*** Settings ***
Variables /repo/user/var_attero.py
Library %{ROBOTREPO}/Lib/LIB_LLK/llk_machine.py WITH NAME class1
*** Keywords ***
CONNECT
[Documentation] Connects to Machine.
${CONNECT_PASS_or_FAIL}= class1.llk_Connect
[Return] ${CONNECT_PASS_or_FAIL}
CONFIGURE_DELAY
[Arguments] ${port_number}=1 ${fixed_delay}=25000
[Documentation] Configure impairment in the active testbed.
${pass_fail_status}= class1.llk_Config_Impair_fixed ${port_number} ${fixed_delay}
[Return] ${pass_fail_status}
llk_Connect 和 llk_Config_Impair_fixed 是 Python 文件中的两个方法。通过关键字 connect 我连接到机器。当我执行这个测试用例时,它执行得很好并通过了。然后,当我选择第二个测试用例来配置延迟时,我收到一条错误消息“无法连接机器”。但是我已经通过第一个测试用例连接到机器,当我物理检查时,机器连接到我的电脑。
所以我认为当我选择第二个关键字时正在实例化另一个对象,并且正在请求与机器的新套接字连接,这显然是失败的,因为机器已经在与另一个套接字通信并且不能接受另一个连接。
当我同时执行两个测试用例时,它工作得很好。当我一个接一个地单独执行时,问题就出现了。
如何防止为每个测试用例创建新对象,并且在整个测试周期中只有一个对象。请帮帮我。
谢谢。
【问题讨论】:
标签: python robotframework