【发布时间】:2013-10-29 15:08:27
【问题描述】:
我最近采用了 Dojo Toolkit 作为我的第一个 JavaScript 库,并且处于需要开始测试的技术债务门槛。我首先研究了 Dojo Object Harness (DOH) 单元测试框架,并通过查看 dojo 工具包源中的实践测试用例学到了最多的东西:
common/dojo/util/doh/tests
common/dojo/dijit/tests
但是,即使有这些示例,我也无法绕过我认为是 DOH 源代码中的错误的错误。这是我的错误:
1 tests to run in 1 groups
------------------------------------------------------------
GROUP "tests.testSomeDialog" has 1 test to run
Error: test timeout in ../../../../net/js/tests/test_SomeDialog.html
ERROR IN:
function (){
// FIXME: implement calling into the url's groups here!!
return this.d;
}
FAILED test: ../../../../net/js/tests/test_SomeDialog.html 15003 ms
WOOHOO!!
------------------------------------------------------------
| TEST SUMMARY:
------------------------------------------------------------
1 tests in 1 groups
1 errors
0 failures
我无法解决此“测试超时”错误,因为教程 [至少部分] 已过时,而且社区似乎很小。问题 1:有人遇到过这个“测试超时”错误吗?
我还看到 SitePen 最近更改为新的测试框架,这可以解释我的很多问题: http://www.sitepen.com/blog/2013/05/01/intern-javascript-testing/
【问题讨论】:
-
您会编辑以包含您的测试模块代码吗?
-
测试超时通常是由编写不当的异步测试引起的,这些测试要么没有正确解决延迟问题,要么实际上在某些时候失败但没有正确注册失败。正如主教所说,我们真的需要查看测试模块代码才能对此发表评论。至于实习生,是的,它使用起来绝对足够稳定,并且在几乎所有方面都与 DOH 同等或更强(而且 IMO 通常在编写测试时不那么痛苦)。
标签: javascript unit-testing dojo intern doh