如何使用jasmine测试TypeScript + browsersify文件?

时间:2016-06-17 20:31:30

标签: typescript gulp jasmine browserify

我有一些TypeScript文件。我使用browsersify将所有这些文件融合到一个bundle.js中(使用tsify中的gulp)。

所以我.ts中有/srcbundle.js中有/build

现在我想测试一下。最好是jasminekarma

我不明白我该怎么做。 Jasmine不能使用.ts最终build.js(显然)。 我不明白覆盖范围如何适用于这种技术堆栈。

你能给我一些运行我的茉莉花测试的技巧吗?应该是什么样的架构?

由于

----编辑-----

所以我试着将build.js包含在我的业力中

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

但如何在内部使用Object? 我在TypeScript中有一个“单元”类。 Browsersify似乎在匿名函数中创建了类似的结构

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

但是范围不允许我从外部访问它(我没有找到)。 因此,当我对茉莉花进行新的User()时,我会遇到以下错误。

  

ReferenceError:找不到变量:Unit

1 个答案:

答案 0 :(得分:0)

您需要使用karma和Karma-jasmine模块加载该bundle.js(假设它包含您的测试)以运行测试。如果您想要覆盖率报告,那么您应该为bundle.js生成源映射。使用源映射,您可以在运行测试后使用remap-istanbul模块。它将为您的打字稿文件生成覆盖数据。