我有一个项目,使用webpack将所有代码打包成一个单独的文件。该项目使用TypeScript,目前运行良好。
我想要添加单元测试,Jasmine似乎是其中一种可行的方式。实际上,在package.json中包含的是jasmine-core - 不确定这是否有多大的区别。
因此,运行一个非常简单的测试,例如:
it('true is true', function(){ expect(true).toEqual(true); });
正常工作。 但是当我添加需要使用导入的测试时 - 例如
import MyService = require('./MyServices');
当我运行测试时,它会抱怨它不知道'require'是什么。
未捕获的ReferenceError:require未定义
现在我猜想这是因为我需要将测试模块打包到类似于打包主项目的方式中。那么最好的方法是什么呢? 我应该在webpack.config.js文件中有多个入口点 - 每个*.spec.ts文件一个入口点吗? 还是有一种方法可以接受未知数量的spec文件
entry: [*.spec.ts] 并为每个文件输出一个js文件 - * .spec.js
frameworks:['mocha','chai','sinon'],
替换为frameworks:['jasmine'],
您还可以使用Mocha报告器而不是进度报告器。 - Frank Bessou