code

비인터랙티브모드에서의 CRA Jest 실행

starcafe 2023. 4. 3. 21:39
반응형

비인터랙티브모드에서의 CRA Jest 실행

업데이트: 주로 CI에서 테스트를 실행하는 것이 사용 사례이지만, 기본 CRA Jest 매개 변수를 재정의하는 것은 일반적으로 의문입니다.


Create React App과 함께 제공된 Jest 구성을 사용하여 테스트를 수행하고 있습니다.항상 인터랙티브모드로 기동합니다.

 › Press a to run all tests.
 › Press o to only run tests related to changed files.
 › Press p to filter by a filename regex pattern.
 › Press q to quit watch mode.
 › Press Enter to trigger a test run.

하지만 내 의견을 기다리고 싶진 않아.한 번 실행한 후 종료합니다.를 사용해 보았습니다.--bail또는--no-watchman스위치가 켜져 있는데도 인터랙티브모드로 기동합니다.

글로벌하게 설치하는 경우jest프로젝트의 루트로 실행시키면 (원하는 대로) 한 번 실행이 완료됩니다.하지만 내가 달릴 때npm test실행하다react-scripts test통과하지 못한 경우에도 워치모드가 됩니다--watch.

업데이트: CRA에도 문제를 제기했습니다.

Jests 플래그를 사용해야 합니다.

예:

npm test -- --watchAll=false

주의: 이것은 react-scripts > 3.00에 대한 입니다.

이전 버전의 경우:

  • 반응 반응의>= 2.1.4 < 3.00

ci 이외의 경우(예를 들어 로컬에서 테스트를 실행하는 경우)에는--no-watch플래그:

npm test --no-watch

  • 반응 반응의<= 2.1.3

CRA가 찾는 것은CI환경변수가 존재하면 워치모드로 동작하지 않습니다.

CI=true npm test당신이 원하는 것을 할 수 있어야 한다.

사용자 가이드 -> 테스트 실행 -> 고객님의 환경에서

고객님의 고객명package.json스크립트:

"test": "react-scripts test --watchAll=false"

또는npm test -- --watchAll=false

또는yarn test --watchAll=false

주의: 호출된 플래그--no-watchreact-scripts < 3.0: https://github.com/facebook/create-react-app/blob/3.x/CHANGELOG.md#remove---no-watch-flag

혁신적이지 않은 솔루션:

npm test a --watchAll=false

또는

yarn test a --watchAll=false

언급URL : https://stackoverflow.com/questions/39724017/running-cra-jest-in-non-interactive-mode

반응형