[ npm cli ] 如何把单元测试的配置放进 cli?
想在项目下用 cli 去做单元测试
项目下什么配置文件都没有,只有入口及 xxx.test.js
这样的文件,我希望在项目根目录下执行 cli test
,用 cli 中的配置来跑测试单元,而不是又在项目中把测试的配置写一遍
去看了 create-react-app
及比较大的 cli 项目,但看得云里雾里的,完全不知道从哪到哪...
现在能想到的就是在执行 test 的时候,把配置文件复制到项目下,然后加进 ignore 里,但总觉得不是很舒服...
相关代码
#!/usr/bin/env node
const { spawn } = require('child_process');
const path = require('path');
function runCmd(cmd, args, callback) {
args = args || [];
const ls = spawn(cmd, args, {
// keep color
stdio: 'inherit',
});
ls.on('close', code => {
callback && callback(code);
});
}
// jest --config jest.js --verbose=false
const jestBin = require.resolve('jest/bin/jest');
// 其实还是这里不懂该怎么写路径,cwd 是根据项目路径来的,但这样就获取不到 cli 的配置了
// 用 __dirname 刚好跟上面的情况相反,就很难受
const jestConfig = path.join(process.cwd(), '/scripts/jest.js');
const args = [
jestBin,
'--config',
jestConfig,
'--verbose=false',
];
runCmd('node', args);
这里希望执行的命令是 jest --config jest.js --verbose=false
希望给个思路或关键字
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论