如果我在主作业中包含tests
,它们将按预期运行。
示例:
version: 2
jobs:
build:
docker:
- image: circleci/<language>:<version TAG>
steps:
- checkout
- run: npm install
- run: npm run ci
# or npm run test
workflows:
version: 2
build_and_test:
jobs:
- build
上一个代码片段将安装所有必需的依赖项(包括开发依赖项)并运行适当的测试(mocha,eslint ...)
但是,如果我尝试拆分作业并依次执行:
version: 2
jobs:
build:
docker:
- image: circleci/<language>:<version TAG>
working_directory: ~/myapp
steps:
- checkout
- run: npm install
test:
docker:
- image: circleci/<language>:<version TAG>
working_directory: ~/myapp
steps:
- checkout
- run: npm run ci
workflows:
version: 2
build_and_test:
jobs:
- build
- test:
requires:
- build
在这种情况下,build
将成功,而test
将不会成功。
错误:eslint not found
。如果我在全局测试工作中安装eslint和mocha,它将开始抱怨我在项目中使用的依赖项,例如express
等。
有人知道我在做什么错吗? 谢谢