[moin-review] 2021-09-17

김_리트리버·2021년 9월 23일
0

Facts

채널톡을 html head 에 직접 삽입하는 것에서 따로 채널톡 클래스로 분리해서 react app 실행 시 채널톡을 실행시키는 것으로 변경함

legacy code 를 refactoring 하기 위해 unit test code 를 작성했다.

사실 그냥 수정 해버리고 브라우저에서 일일히 눌러서 확인하면 오히려 더 빨리 끝날 수 있다.

하지만 추후 해당 부분에 뭔가 추가될 때 bug 를 방지하기 위해서 시간이 걸리더라도 unit test 를 넣는게 맞다고 판단했다. test 대상이 아닌 부분을 mock 처리 하는데 많은 시간이 소요 됬지만 이렇게 하나하나 test code 를 넣다보면 프로그램의 안정성을 향상 시킬 수 있다.

아무 사람도 사용하지 않는 개인 프로젝트 같은 경우 bug 가 생기면 바로 고치면 된다. 피해입는 사람도 없다.

하지만 해외송금을 서비스를 하는 현재 회사의 앱같은 경우 bug 가 발생하면 고객이 바로 이탈해버리거나, 법적인 문제에 휘말릴 수도 있다. bug 발생을 최소화 하는 것을 단순히 개인 책임으로 돌리는 것은 위험하다.

때문에 시간이 다소 걸리더라도 unit test 를 넣어놓고 test 를 자동화 해놔야 한다고 생각한다.

Finding

testingLibrary react 에서 render() 로 호출하는 react component 안에 jest.fn() 이 있으면 아래 error 가 나오게 된다.

뭐 error 원인은 mockConstructor 를 호출할 때 argument 도 전달했기 때문 이었다.

Error: Uncaught [Error: mockConstructor(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.]

Feelings

test code 를 작성하면서 app 을 만들게 되면 결과를 브라우저에서 확인하지 않기 때문에

강제로 javascript 나 node 에 대해 공부하게 된다. 오히려 좋다.

profile
web-developer

0개의 댓글