【发布时间】:2013-04-27 07:44:03
【问题描述】:
异步测试如何在实习生测试框架中工作?我试图让它们完全按照示例中的方式运行,但是异步测试立即通过,而无需等待回调运行。
it('should connect in 5 seconds', function () {
var dfd = this.async(5000);
conn.connect(credentials, dfd.callback(function(result) {
expect(result).to.... something
}));
}
测试立即通过。我做错了什么?
【问题讨论】:
-
也许测试通过了,因为回调 is 按预期调用并且回调中的断言恰好通过了?我猜你已经验证了回调没有被调用。只是一个想法。
-
好吧,
conn.connect必须执行异步请求,但回调会在任何 XMLHttpRequest 发生之前触发。 -
好吧,我发现回调在建立连接之前就被触发了。但是,
result变量保存状态,只有当状态等于某个值时我才需要检查它。我可以说“这不是我的情况,当您遇到另一个结果时再次调用回调”?
标签: javascript asynchronous promise intern