我有一些TypeScript文件。我使用browsersify
将所有这些文件融合到一个bundle.js
中(使用tsify
中的gulp
)。
所以我.ts
中有/src
,bundle.js
中有/build
。
现在我想测试一下。最好是jasmine
和karma
。
我不明白我该怎么做。 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
答案 0 :(得分:0)
您需要使用karma和Karma-jasmine模块加载该bundle.js(假设它包含您的测试)以运行测试。如果您想要覆盖率报告,那么您应该为bundle.js生成源映射。使用源映射,您可以在运行测试后使用remap-istanbul模块。它将为您的打字稿文件生成覆盖数据。