不幸的是,我们的网络项目还没有使用ES6模块。相反,我们会转换我们的TypeScript源,然后将它们连接在一起。
这在浏览器以及Karma和WallabyJS中都很有效(通过在配置文件中设置files
选项)。
由于我们的1500次测试需要很长时间才能执行,我想查看Jest。但是,我们的测试失败了,因为jest无法找到我们正在导入的类型。
例如,我们有一个名为StringUtils
的类,以及以下代码:
import StringUtils = common.utils.StringUtils;
class Person {
private _name: string;
address(): string {
return StringUtils.buildAddress(this);
}
}
我们失败了:
ReferenceError: common is not defined
有没有办法在运行测试之前告诉jest要加载哪些文件(以及以什么顺序加载),就像我们使用Karma和WallabyJS一样?
答案 0 :(得分:0)
您应该能够指定setupTestFrameworkScriptFile或[setupFiles]([setupTestFrameworkScriptFile](https://facebook.github.io/jest/docs/configuration.html#setupFiles],它可以让您在开始运行测试之前设置一些内容。
您可以将它们放在package.json
或单独的文件中(如果您使用--config
标记传递它)。