【发布时间】:2013-03-28 09:52:17
【问题描述】:
是否可以从 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'
注意
更改为已经具有此功能并且一切都很好的测试框架不是一种选择。 :(
【问题讨论】:
-
你为什么不通过异常?
-
@javapirate 这就是我最终所做的。似乎是最好的办法。 Tnx
标签: javascript language-features