테스트 용 Redux 및 Jest를 사용하여 create-reaction-app를 작성했습니다. 작업 작성자로부터 API 요청을 만들기 위해 fetch를 사용하고 있습니다. 필자가 테스트를 작성하면서 필자가이 요청을 모의하려고 시도한 이유가 무엇인지 알아 냈습니다. 여전히 API에 실제 요청을하고 네트워크 연결 오류를 얻으려고합니다. (그래서 요청마다 캐치를 얻습니다. 시험 시간). 이것이 브라우저에서 잘 작동한다고 언급 할 가치가 있습니다.fetch API 요청을 사용하여 작업 생성자를 테스트하는 방법
import fetch from 'isomorphic-fetch';
import { SUBMIT_SUCCESS, EMPLOYEE_DETAILS, ERROR } from './actionTypes';
import { API_URL } from '../../Constants';
export function getEmployeeDetails(id) {
return async dispatch => {
try {
let payload = await (await fetch(`${API_URL}/users/${id}`, {
method: 'GET',
headers: { jwt: localStorage.getItem('jwt') },
})).json();
dispatch(getEmployeeDetailsSuccess(payload.user));
} catch (err) {
dispatch(errorCatch(err));
}
};
}
그리고 기본적으로이 작업을하려고 며칠을 보냈다 - https://medium.com/@ferrannp/unit-testing-with-jest-redux-async-actions-fetch-9054ca28cdcd
나는이 피곤합니다.
내가 뭘 잘못하고 있니? 이 동작을 테스트하는 방법에 대한 실제 예를 얻을 기회가 있습니까?
감사합니다.
좋은 조언 - 나는 내 코드를 리팩토링 할 것이다. 고맙습니다! –