如何使用Jenkins自动化Mocha测试?

时间:2017-05-22 09:53:35

标签: testing jenkins mocha

所以我已经设置了一个github项目并将其链接到Jenkins但是每当我执行构建尝试时它都在控制台中说:

C:\Program Files (x86)\Jenkins\workspace\SYS-ictlab>mocha
'mocha' is not recognized as an internal or external command,
operable program or batch file.

我错过了什么?

提前致谢

3 个答案:

答案 0 :(得分:6)

如果您在此之前已经执行了npm install作为CI阶段的一部分,并且您已将mocha添加为package.json中的(dev)依赖项,那么您可以调用mocha二进制文件作为如下

node ./node_modules/mocha/bin/mocha

您正在尝试调用该命令,就好像它已被“链接”一样,因此可以全局访问该命令,这只能在运行npm install -g mocha后才能实现。这在所有CI环境中可能都不可行,因此上述解决方案更为常见。

答案 1 :(得分:0)

我也面临类似的情况,即使我运行'mocha' is not recognized as an internal or external command,它也抛出了npm install,所以我更改了Jenkins配置文件。

在配置文件的“构建”部分下,给出此命令,它将正常工作而不会引发任何错误。 (假设您的package.json具有有效的摩卡运行命令)

npm install
chmod 777 ./node_modules/.bin/mocha
npm uninstall mocha && npm i mocha
npm test 

答案 2 :(得分:0)

我遇到了同样的确切错误,我通过在命令前面添加“ npx”来解决了该错误。示例:

npx mocha test-file.js

我的测试在与Jenkins构建相同的位置的命令提示符下运行正常,

C:\Program Files (x86)\Jenkins\workspace\project-name>mocha test-file.js

但是在詹金斯中实际运行构建时,我会得到“ mocha”无法识别的错误消息。在前面添加npx对我来说解决了这个问题!