簡體   English   中英

編寫異步Vows.js測試時出錯

[英]Error in writing asynchronous Vows.js Tests

我一直在使用節點並使用誓言來編寫測試。

var vows = require('vows');
var assert = require('assert');

var boardData = require('../lib/data/BoardData.js');

vows.describe('Loading provinces and Boundries for').addBatch({
  'version': {
    '2008E5-1':{
      topic: function () { boardData.createBoard("2008E5",this.callback); },
      'exists': function (err,provs,bounds) { assert.ok(true); }
    }/*,
    '2008E5-2': {
      topic: function () { boardData.createBoard("2008E5",this.callback); },
      'exists': function (err,provs,bounds) { assert.ok(true); }
    }*/
  }
}).export(module);

當我運行此代碼時,我得到了預期的結果。 當我取消注釋注釋部分時,注意到兩個已成功完成,但是可以通過放置console.log(“foo”)來發現第二個是第二個。 在適當的位置。

·· ✓ OK » 2 honored (0.067s)
·
✗ Errored » callback not fired
  in version 2008E5-1
  in Loading provinces and Boundries for
  in undefined

這一定是我缺少某些東西或缺乏對某些東西的理解,但我無法弄明白。 誰能幫我? 提前致謝!

boardData.createBoard包含其他是異步調用,顯然是不允許的(應該在設置中完成?)。 沒有證據,只是實驗。

我擔心“版本”鍵沒有主題。 我認為它需要一個自己的主題。 如果需要,您可以在其下嵌套子主題。

或者,使用--spec選項運行它以查看正在運行的測試。

vows --spec

要么

./node_modules/vows/bin/vows --spec

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM