Travis/Jest:TypeError: 개체 '#'의 읽기 전용 속성 'Symbol(Symbol.toStringTag)'에 할당할 수 없습니다.
나의 모든 것jest typescript테스트가 실패하다travis파이프라인에서 다음 오류가 발생했습니다.
TypeError: Cannot assign to read only property 'Symbol(Symbol.toStringTag)' of object '#<process>'
코드에 특별한 변경을 가하지 않고 갑자기 일어난 일입니다.그리고 지역적으로 모든 것이 잘 작동한다.
무슨 일이 일어나고 있는지 짐작 가는 거라도?
이것은 노드 v11.11에 부속된 버그입니다.v11.10으로 다운그레이드하거나 facebook이 이미 푸시한 수정(노드 버전 11.11 이상의 제스트 오류)을 기다릴 수 있습니다.
TravisCI와 관련된 문제인 경우 다음과 같이 작동하는 수정 버전을 설정할 수 있습니다.
node_js:
- "11.10.1"
버전도 업그레이드할 수 있습니다.jest24.3.0으로 변경되어 이 문제가 해결되었습니다.이것은 노드를 다운그레이드 하는 것보다 장래성이 있는 솔루션이라고 생각합니다.
이 문제는 노드를 v11.12.0으로 업그레이드하는 것만으로 해결되었습니다.
위의 답변 중 어느 쪽도 문제를 해결할 수 없는 사용자는 농담을 ^24.3.0으로 업그레이드하고 클라이언트 컨테이너의 도커 이미지에 있는 노드 버전을 다운그레이드해 보십시오.나는 사용했다FROM node:11.10-alpine노드 Travis 버전을 다운그레이드하지 않고CI의 용도
이 문제에 대한 해결책은 주로 두 가지가 있었다.
- joke 버전을 24.3.0으로 업그레이드합니다(나에게는 효과가 없었습니다).
- 노드 버전을 11.10.1로 다운그레이드합니다.
노드 버전을 다운그레이드 하는 것은 좋은 솔루션이 아니지만 테스트를 실행하려는 사람은 시도해 볼 수 있습니다.노드 버전을 11.11.1에서11.10.1로 다운그레이드함으로써 패키지 설치 콜 "n"을 호출합니다.이 n 패키지는 Node.js 버전을 대화형으로 관리하는 데 도움이 됩니다.
npm install -g n
설치 후 실행만 하면 됩니다.
sudo n 11.10.1
노드 버전이 변경되면 를 실행하여 노드 버전을 확인할 수 있습니다.
node --version
나중에 테스트를 실행할 수 있습니다.
npm test
도움이 됐으면 좋겠습니다:)
nvm(노드 버전 관리자)을 사용하는 경우
nvm install v11
nvm use v11
언급URL : https://stackoverflow.com/questions/55059748/travis-jest-typeerror-cannot-assign-to-read-only-property-symbolsymbol-tostr
'programing' 카테고리의 다른 글
| Android Client에서 서버로 GZIP 압축 JSON을 전송할 때 사용해야 하는 헤더는 무엇입니까? (0) | 2023.03.31 |
|---|---|
| 컨트롤러의 Spring Boot @Async 메서드가 동시에 실행되고 있습니다. (0) | 2023.03.31 |
| 모나코 에디터 동적 크기 조정 가능 (0) | 2023.03.31 |
| 여러 요소에서 ng 클릭으로 클래스 전환 (0) | 2023.03.31 |
| Woocommerce에 고객 주문 코멘트(고객 메모) 표시 (0) | 2023.03.31 |