簡體   English   中英

使用Jasmine從模塊測試功能

[英]Testing a function from a module with Jasmine

我有一個看起來像這樣的模塊“ test.js”;

export default function main(){
   sub_main();
}

export function sub_main(){
 //Do something
}

我想測試Jasmine中的sub_main方法。 我嘗試使用import語句導入sub_main()函數以在Jasmine中進行測試,但是Jasmine遵循“意外的令牌導入”,然后使用了require語句。 現在,它符合test.js模塊中的export關鍵字。

這應該有助於您走上正確的道路。 您可能希望在CommonJS模塊上查找一些信息,因為這似乎是您需要使用的信息。

module.exports = {
    main: function() {
        this.sub_main();
    },

    sub_main: function() {
        return 'It Works!';
    }
}

還有一個工作測試示例:

it('should work', function() {
  const sub_main = require('./path/to/myModule').sub_main;
  const itWorks = sub_main();

  expect(itWorks).toEqual('It Works!');
});

您使用的語法實際上是ES6 import ,您的節點版本不支持。

您可以在將轉譯的文件加載到Jasmine中之前將Babel與Jasmine一起使用,或者使用@tehbeardedone在回答中說的方式(即CommonJS)編寫代碼。

暫無
暫無

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

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