nodejs:如何运行测试,然后构建dockerfile



我试图创建一个基本的CI CD管道,我试图创建批处理文件来运行测试,然后执行docker构建。这是我的基本批处理文件

@ECHO OFF
call npm run test
call docker build -t my-docker-file .
PAUSE

我如何才能知道是否所有测试都成功运行?我用的是摩卡和柴

首先,您需要使用--exit标志来执行测试。我的包.json看起来像这样:

"test": "mocha test --timeout 4000  --exit"

因此,当测试结束时,控制台不会一直打开。

然后,这个想法是在批处理和节点之间创建一个通信。我用过bash,但想法是一样的。

如果测试已经通过,基本上是写入.env文件,执行后检查变量是否设置为true。

首先,要做到这一点,您需要用它更新test.js文件。

我使用envfile。你可以查看这个问题

//get the reference to your environment file and update
//THIS is you have to add
afterEach(function () {
const state = this.currentTest.state;
if (state !== "passed") {
//write into .env: MYENVVAR=0
}
});

然后,您将在.env文件中放入一个变量,以了解测试是否正确执行。

因此,下一步是读取批处理过程中的值,如果可以,则继续

相关内容

最新更新