모든 JEST 테스트 실행 전에 일부 구성을 실행하려면 어떻게합니까?
-
21-12-2019 - |
문제
은 Fluxxor를 사용하여 이벤트 디스패처를 제공하는 React 애플리케이션에 대한 테스트를 쓰고 있습니다.그 작업을 수행하려면 JEST는 내부적으로 사용되는 몇 가지 모듈을 조롱하지 않고 노드 자체가 제공합니다.
이들을 unmockedModulePathPatterns
Config 키에 추가 할 수 없으며 대신 다음과 같은 코드를 사용해야합니다.
[ 'util', 'events' ].forEach(function (module) {
jest.setMock(module, require.requireActual(module));
});
.
그러나 나는 그것을 넣는 데 유용한 곳에서는 찾을 수 없습니다.나는 거의 모든 테스트에서 사용하는 몇 개의 글로벌을 설정하는 setupEnvScriptFile
를 가지고 있지만 jest
객체는 해당 컨텍스트에서 사용할 수있는 것처럼 보이지 않으므로 조롱을 설정할 수는 없습니다. 해피 스톱 갭 측정 값은 Perneracodicetagode 블록을 테스트하는 Fluxxor 저장소를 시작하지만 이상적으로는 전화를 걸 수 있습니다.
해결책 2
적어도 현재 "이 경우"는 할 수 없지만이를 지원하기 위해 수행 해야하는 두 가지 변경 사항에 대한 문제가 열려있는 것으로 보입니다.
https://github.com/facebook/jest/issues/106 https://github.com/facebook/jest/issues/107
다른 팁
"nofollow"> config.setuptestframeworkscriptfile ?문서에 따라 원숭이 패치에 대한 올바른 위치가 될 것 같습니다.
fwiw, 여기에 Fluxxor 및 React-Router 지원을 테스트 사양에 추가하기 위해 사용한 솔루션이 있습니다.