그룹에 멤버끼리 더치페이할 때 사용할 수 있는 웹을 만들어보는 강의를 들으며
TDD 방식으로 코드를 짜보고 있다!
TDD는 테스트 주도 개발을 뜻하고 테스트코드를 작성하며 개발하는 것을 뜻하는데
먼저 실패하는 테스트 코드를 작성한 후 그 실패한 테스트 코드를 통과, 성공시키기 위해
코드를 또 작성한다. 그 다음 리펙토링을 하면서 수정을 하는 것이 기본적인 순서인 것 같다!
https://zoon-bloom.tistory.com/122
TDD 테스트 주도 개발
리액트를 통해 프로젝트를 생성하게 되면 따라오는 jsest와 테스트 코드 파일을 보고 사용 방법과 왜 사용하는지에 대해 항상 의문이었는데 테스트 코드에 대해 처음부터 알아보려고 한다! 강의
zoon-bloom.tistory.com
./src/components/CreateGroup.spec.tsx
다음과 같이 테스트 코드를 작성한 파일이다. 파일이름은 실제 컴포넌트의 이름에서 spec을 붙여서 작성한다
요구 사항에 맞게 테스트 코드를 순서대로 작성 후에 실제 컴포넌트를 작성하는 것이다
일단 실제 컴포넌트 작성 전이기 때문에 무조건 실패가 나올 수밖에 없고 실제 컴포넌트의 코드를 작성해
나가며 테스트를 통과시키는 것이 TDD 방식의 기본인 듯하다.
확실히 TDD 개발 방식으로 코드를 작성하다보니 지금 작성하는 기능에 대해 집중적으로 생각하게 되고
요구사항과 관련없는 코드는 신경 쓰지 않게 되는 장점이 있다.
단점이라면 실제 개발하는 코드만큼 테스트 코드도 시간이 오래 걸리고 파일 코드에서 보이는
to메서드 등 jest에서 제공하는 기능들도 찾아봐야 해서 많이 힘들다는 단점? 이 있다..
설정하고 추가적인 라이브러리 확인등등..시간을 엄청나게 잡아먹음. jest-dom , typescript는 부가 추가 설정
https://zoon-bloom.tistory.com/123
jest 사용 도중 오류
강의를 들으며 jest로 테스트코드를 작성중 SyntaxError: C:\Users\jh\Desktop\dutchpay-app\src\components\CreateGroup.spec.tsx: Support for the experimental syntax 'jsx' isn't currently enabled (7:12): 라는 오류가 발생했다. const rende
zoon-bloom.tistory.com
그래도 앞으로는 TDD 방식으로 계속 작성해볼 예정이다. 생각보다 재미도 있고 현업에서는
테스트 코드를 중요시 여기는 곳이 많다고 들어서 천천히 적응해 나가야겠다.