我是 RobotFramework 的新手,我正在尝试做一个简单的测试。使用 Log 关键字打印“Hello world”并从 java 类获取值(我在 Ride 上使用 jybot):
*** Settings ***
Library robot.MyTest
*** Test Cases ***
Test1
Log Hello World INFO
Get Value
*** Keywords ***
Get Value
Get Value
但是当我运行它时,测试不会通过,并且会出现以下错误:
Starting test: MyTest.Test1
20140817 01:00:15.683 : INFO : Hello world
20140817 01:00:15.798 : FAIL : Maximum limit of started keywords exceeded.
Ending test: MyTest.Test1
我已经搜索过,但对此我仍然没有任何线索。
您的测试调用关键字Get Value
,它调用关键字Get Value
。您已经创建了无限递归。Get Value
calls Get Value
哪个调用Get Value
哪个调用Get Value
这调用...
最好的解决方案是最简单的解决方案:不要创建调用自身的关键字。如果已经存在具有给定名称的关键字,请勿创建另一个具有相同名称的关键字。虽然您可以使其具有相同名称的两个,但这将使您的测试用例更难以理解。
如果您有另一个关键字Get Value
并且您只需有两个具有相同名称的关键字,您可以提供完全限定的名称,这样机器人就不会再次调用相同的关键字。例如,如果您的Get Value
正在尝试致电Get Value
from robot.myTest
,这样称呼它:
*** Keywords ***
Get Value
robot.myTest.Get Value
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)