-
카테고리
-
세부 분야
데브옵스 · 인프라
-
해결 여부
미해결
볼륨을 적용하였는데 npm run test 가 반영되지 않는 이유가 궁금합니다.
22.01.08 07:48 작성 조회수 403
0
안녕하세요 선생님!
도커 컴포즈에서 볼륨 설정을 아래와 같이 하면, App.js 파일은 물론 App.test.js 파일도 볼륨 설정을 한것이라고 생각하는데요.
volumes:
- /usr/src/app/node_modules
- ./:/usr/src/app
왜 로컬에서 App.test.js 파일을 변경 한 후, 컨테이너 안에서 npm run test 를 하면 로컬의 변경을 반영하지 않는 것인지 궁금합니다.
'docker run -it codetrain999/docker-react-app npm run test' 로 실행하였을 떄도 적용되지 않고 쉘에 직접 붙어서 실행해도 반영되지 않았습니다.
테스트용 컨테이너를 별도로 생성하니 App.test.js 파일의 변경이 실시간으로 적용되는데, 둘의 차이가 무엇인지 모르겠습니다.
감사합니다.
답변을 작성해보세요.
2
DumDums
2022.02.16
대신 설명을 드리자면 강의자분의 소스코드에서 테스트가 실패하는 이유는 리액트앱내의 소스코드를 바꿔주고 테스트 코드에 있는 내용을 바꾸어주지 않았기 때문입니다.
test file 을 아래처럼 바꾸시면 됩니다
import { render, screen } from '@testing-library/react';
import App from './App';
test('renders learn react link', () => {
render(<App />);
const linkElement = screen.getByText(/바꾸어준 내용/i); // <- 여기를 질문자님이 바꾼 콘텐츠 내용으로 바꾸시면 됩니다.
expect(linkElement).toBeInTheDocument();
});
답변 1