javascript - 我应该针对生产构建转换(即 Babel)运行我的测试吗?
问题描述
我的一位同事最近在一个新项目(一个 JS 库)中设置了测试,其中转换步骤挂钩到生产配置中 Webpack 的 babel 配置。
作为参考,这是与 Jest 一起使用的设置:https ://jestjs.io/docs/en/configuration.html#transform-object-string-string
生产构建以 ES5 为目标,而我们的 CI 在 Node 10 及更高版本上。这意味着,对于我们所有的测试,源代码都被所有不必要的 Babel 转换所转换。请注意,我们的源代码是常规的 ES2016 Javascript,没什么花哨的。唯一需要的转换可能是 ES6 导入语法。
我的直觉反应是,这非常浪费,并且不必要地将测试与生产构建配置结合起来。但我的同事的理由是,他希望确保测试针对用户将使用的相同工件运行。
这对我来说很有意义,但我不确定正确的答案是什么。每种方法的优缺点是什么?针对生产构建转换运行测试有什么危险?
解决方案
推荐阅读
- wordpress - 页面中的导航项目但不显示 WordPress
- .net - 如何更改 WPF ListView 上项目焦点矩形的颜色?(不是项目突出显示颜色)
- angular - Handsontable 重复表
- angular - 运行 ng serve 时未定义命名空间声明,但智能感知确实选择了它
- assembly - 汇编语言比较指令不起作用
- java - 使用 mockito 调用 Service 类的嵌套方法时获取 NullPointerException
- python - 在 Keras 中声明转换序列的 input_shape?
- python - Inf 值 scipy.stats.truncnorm
- sql - SQL Server:通过将表与自身连接来爆炸BOM以获得最小的孩子
- mysql - TypeORM 请求自动生成的表nestjs