Jest transform Ignore Patterns가 작동하지 않습니다.
저는 이것에 관한 다른 질문이나 Github의 다른 프로젝트를 오랫동안 살펴보았지만, 어느 대답도 제게는 효과가 없는 것 같습니다.
프로젝트에서 서드파티 라이브러리를 로드하고 있는데 Jest 테스트 실행 시 오류가 발생합니다.
export default portalCommunication;
^^^^^^
SyntaxError: Unexpected token export
> 1 | import portalCommunication from 'mathletics-portal-communication-service';
이 라이브러리를 변환하기 위해 여러 가지 방법으로 Jest 설정을 업데이트하려고 했지만 항상 같은 오류가 발생합니다.
현재 jeast.config.js 파일입니다.
module.exports = {
moduleNameMapper: {
'\\.(css|scss)$': 'identity-obj-proxy',
'\\.svg$': '<rootDir>/test/mocks/svg-mock.js'
},
setupFiles: ['./test/test-setup.js'],
transformIgnorePatterns: [
'<rootDir>/node_modules/(?!mathletics-portal-communication-service)'
]
};
또한 이 mathletics-portal-communication-service 디렉토리에 대해 babel-jest를 실행하기 위한 변환 속성을 추가해 보았습니다.
도와주세요!
그transformIgnorePatterns
내가 바뀌기 전까지 나한테는 효과가 없었어.babelrc
로.babel.config.js
, 다음과 같이 합니다.
module.exports = {
"presets": [
"@babel/preset-env"
]
};
이 코멘트에서는, https://github.com/facebook/jest/issues/6229#issuecomment-403539460 를 참조해 주세요.
현시점에서의 회피책으로 설정을 변경하여moduleNameMapper
대신 해당 라이브러리의 모의 클래스를 로드하는 옵션입니다.저는 이 제품을 사용하는 것이 더 좋았습니다.transformIgnorePatterns
그 대신 어떤 아이디어라도 주시면 감사하겠습니다.
새 구성:
module.exports = {
moduleNameMapper: {
'\\.(css|scss)$': 'identity-obj-proxy',
'\\.svg$': '<rootDir>/test/mocks/svg-mock.js',
'mathletics-portal-communication-service': '<rootDir>/test/mocks/mathletics-portal-communication-service-mock.js'
},
setupFiles: ['./test/test-setup.js']
};
후행 슬래시를 추가하면 다음과 같은 문제가 해결됩니다.
{
// ...
transformIgnorePatterns: [
'<rootDir>/node_modules/(?!mathletics-portal-communication-service/)'
]
};
저희 조직의 다른 팀이 공통 모듈을 추가했습니다.이것은 전사가 되지 않았기 때문에 문제가 발생하였습니다.
저는 https://babeljs.io/docs/en/configuration#whats-your-use-case을 팔로우했습니다.
- 변환 완료
.babelrc
로.babel.config.json
- jeast config에 다음과 같이 추가되었습니다.
transformIgnorePatterns: ['/node_modules/(?!(@companyName)/).*/'],
이것으로 내 문제는 해결되었다.
의 사용법일 수 있습니다.rootDir
. 시험해 보세요.
"transformIgnorePatterns": [
"node_modules/(?!(mathletics-portal-communication-service))"
]
언급URL : https://stackoverflow.com/questions/50147915/jest-transformignorepatterns-not-working
'programing' 카테고리의 다른 글
Typescript를 사용하여 Express Request 개체 확장 (0) | 2023.03.17 |
---|---|
왜 사람들은 리액트/JSX에 { " }을(를) 넣을까요? (0) | 2023.03.17 |
ReactJs 글로벌 도우미 기능 (0) | 2023.03.17 |
node.display에 json 요건이 있습니까? (0) | 2023.03.17 |
CSS - 아이폰 및 Safari의 선택 메뉴에서 옵션 숨기기 (0) | 2023.03.17 |