2016-06-17 36 views
0

我有一些TypeScript文件。我用browsersify將所有這些文件合併爲一個bundle.js(使用tsifygulp)。如何用茉莉花測試TypeScript + browsersify文件?

所以我的.ts在我的/srcbundle.js在我的/build

現在我想測試一下。最好用jasminekarma

我不明白我該怎麼做。茉莉花不能用.ts最後build.js(顯然)。 我不明白作爲覆蓋面的東西可以如何使用這個技術堆棧。

你能給我一些提示來運行我的茉莉花測試。它應該是什麼樣的架構?

感謝

---- -----編輯

所以我試圖將build.js包括了我的人緣

files: [ 
    'build/**/*.js', 
    'spec/**/*.spec.js' 
] 

但如何使用對象內? 我在TypeScript中有一個「Unit」類。 Browsersify似乎創建一個匿名函數

var Unit = (function() { 
    function Unit() { 
    } 
    return Unit; 
}()); 

內像這樣的結構,但幅度並不讓我從外部訪問它(我怎麼沒發現)。 所以當我做一個新的User()成茉莉花我有以下錯誤。

ReferenceError: Can't find variable: Unit

回答

0

您需要使用karma和Karma-jasmine模塊加載該bundle.js(假設它包含您的測試)以運行測試。如果你想覆蓋報告,那麼你應該爲你的bundle.js生成源地圖。使用源映射可以在運行測試之後使用remap-istanbul模塊。它會爲您的打字稿生成覆蓋率數據。

+0

在帖子中回答。我不知道如何訪問browsersify匿名函數的內容。 「假設它包括你的測試」是什麼意思? –

+0

我的意思是你應該包含測試文件到bundle.js – alexeibs

+0

build.js(或者bundle.js)是作爲最終的生產文件。你不想在你將包含在index.html文件中的文件中進行測試嗎?我不確定要理解。 –