在我的本地pc上,我能够运行'npm test‘命令而没有任何错误。但是当我将我的feature分支推送到Github时,Circleci无法运行我的测试,并以如下所示的错误结束
sh: 1: jest: not found
npm ERR! Test failed. See above for more details.
Exited with code 1我正在使用这个Circleci config.yml文件,但它不工作:
version: 2.1
jobs:
build:
docker:
- image: circleci/node:10.1.0
steps:
- checkout
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
- v1-dependencies-
- run: npm install
- save_cache:
key: v1-dependencies-{{ checksum "package.json" }}
paths:
- node_modules
test:
docker:
- image: circleci/node:10.1.0
steps:
- checkout
- run:
name: Test
command: npm test
- run:
name: Generate code coverage
command: './node_modules/.bin/nyc report --reporter=text-lcov'
- store_artifacts:
path: test-results.xml
prefix: tests
- store_artifacts:
path: coverage
prefix: coverage
workflows:
version: 2.1
build_and_test:
jobs:
- build
- test:
requires:
- build如果我使用这个config.yml,它就能正常工作:
version: 2.1
jobs:
build:
docker:
- image: circleci/node:10.1.0
steps:
- checkout
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
- v1-dependencies-
- run: npm install
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ checksum "package.json" }}
- run: npm test 我想知道为什么第一个config.yml文件不工作?有什么线索吗?谢谢你们所有人。
发布于 2019-05-14 01:09:37
在第一个配置中,您在test作业中运行npm test。您需要安装Jest,但您从未安装过它,因此安装失败。
在第二个配置中,在运行Jest之前,首先运行npm install,我假设它是在安装npm test。
虽然您在第一个配置中运行了npm install,但它是在build作业中运行的,而不是在test作业中运行。两个不同的任务,意味着两个不同的容器。他们彼此之间没有任何关系。
https://stackoverflow.com/questions/56100781
复制相似问题