1
我試圖用requirejs和jsTestDriver intellij插件編寫一些javascript單元測試。當我在IDE中運行它們時,即使有一些,我也沒有錯誤。我只在打開瀏覽器控制檯時看到它們。 有人設法使IDE插件將失敗轉化爲require函數嗎? 我的代碼如下和一些屏幕截圖說明我的問題。JsTestDriver在intellij中使用requirejs時斷言
TestCase("Collections", {
"test User Collection": function() {
require(['lib/underscore', 'lib/backbone', 'app/user', 'app/collections'],
function (_, Backbone, user, appCollections) {
assertNotUndefined('Users must be defined', appCollections.users);
assertTypeOf('Users must be backbone collection', typeof Backbone.Collection, appCollections.users);
assertTypeOf("Users' model must be a user", typeof Backbone.Model, appCollections.users.model);
});
}
});
JS測試驅動器和這裏介紹requirejs - HTTP:/ /stackoverflow.com/questions/12482072/is-it-possible-to-run-js-test-driver-tests-that-uses-requirejs-modules。你必須明白你寫的測試可能是異步的,因此js-test-driver可能不知道在測試方法返回之前測試沒有運行。 –
感謝您的回答。它實際上是異步的,因爲當您在require函數後面添加一條指令時,它會在require函數內的任何指令之前執行。是否有任何意思讓它等待整個執行的結束?您評論中的鏈接不處理這個異步問題。 –
也許這個頁面將有所幫助 - http://code.google.com/p/js-test-driver/wiki/AsyncTestCase。 –