是否可以从 JavaScript 中的调用者函数返回/退出?
我们正在向我们的框架添加测试方法,如果我们在断言上出现错误,我们希望退出。
鉴于以下简单的示例代码,我想将 EXIT_TEST_THAT_CALLED_ME 交换为将退出(相当于在测试中返回)方法 Test123 的东西。
Assert = function ( expectedTrue, comment ) {
if( ! expectedTrue ) {
Log.Error( comment );
EXIT_TEST_THAT_CALLED_ME;
}
}
Test123 ( ... ) {
var inputField = getInputField(".input");
Assert( (inputField !== null ), "Checking that we found an input field");
inputField.doSomething();
// This row will cause run time error if inputField is null
}
我尝试过的
返回- 当然不起作用,因为它只从断言方法返回
arguments.callee.caller.return - 什么都不做
arguments.callee.caller.return() - 没有方法'return'
注意
更改为已经具有此功能且一切都很好的测试框架不是一种选择。:(