04.08 TIL (테스트 코드)
2023. 4. 9. 02:08ㆍ개발일지
우선 테스트 코드를 작성 전에 테스크 코드에 대해 알아보았습니다.
소프트웨어를 테스트하는 유형은 여러 가지가 있습니다. 소프트웨어 테스트 방법은 유형, 목적, 방법 등에 따라 최적화된 테스트 방법을 채택해야 합니다. 그 중에서도, 가장 많이 사용되고 있는 단위 테스트(Unit Test), 통합 테스트(Integration Test) 2개를 정리합니다.
단위 테스트(Unit Test)
- 프로그램에서 테스트를 할 수 있는 가장 작은 단위를 실행하여 단위가 정상적으로 흘러가는지를 테스트하는 것을 말합니다. 단위 테스트(Unit Test)를 진행합니다. 단위 테스트(Unit Test)의 크기가 줄어들면, 단위(Unit)의 복잡도가 줄어들기 때문에, 최소한 단위(Unit)는 가장 작은 크기로 진행을 합니다.
- 일반적으로, 어떤 프로그램을 개발 할 때 고객의 요구사항을 기준으로 먼저 개발한 다음에 테스트 케이스(테스트 데이터)를 만들어 단위 테스트(Unit Test)를 진행합니다. 이 경우보다는 테스트케이스(테스트 데이터)를 먼저 만든 후에, 개발을 하는 것이 단위 테스트(Unit TesT)의 효율성을 더욱 증가시킵니다.
- 이 단위 테스트(Unit TesT)를 정확하게 한다면, 어떠한 기능을 만들 떄 에러 없는 기능을 만들어 낼 수 있는 확률이 커지고, 코드 리팩토링의 횟수를 줄일 수 있습니다. 때에 따라, 단위 테스트(Unit Test)로 메서드(Method)의 에러 발생률도 낮출 수 있습니다.
- 그래서, 단위 테스트(Unit Test)는 코드의 리팩토링도 진행할 수 있고, 기능의 에러율을 낮출 수도 있습니다.
통합 테스트(Integration Test)
- 단위 테스트보다 큰 개념으로, 이제는 외부 환경까지 고려한 것들을 테스트합니다.
- 통합 테스트(Integration Test)는 여러 개의 단위 테스트(Unit Test)를 합쳐 정상적으로 작동하는지를 테스트하는 단계라고 할 수 있습니다.
통합 테스트의 방법은 빅뱅 통합테스트와 점진적 통합 테스트 방법이 있습니다.
- 빅뱅 통합 테스트는 여러 개의 단위 테스트를 다 합친 다음에, 통합 테스트를 진행하는 방법을 말합니다. 이 방법의 경우에는 위의 내용처럼 어디에서 에러가 발생하는지 쉽게 찾을 수 없고, 코드 리팩토링 하는데 시간이 많이 소요가 됍니다.
- 점진적 통합 테스트는 빅뱅 통합 테스트 방법과 다르게, 1개의 단위 테스트씩 합치면서 통합 테스를 진행하는 방법을 말합니다. 점진적 통합 테스트는 하향식과 상향식이 있는데, 하향식은 위에서부터 하나씩 합치면서 통합 테스트를 진행하고, 상향식은 아래의 하위 단위 테스트부터 합쳐서 위로 올라갑니다. 하향식 통합 테스트는 빠르게 테스트를 해야할 때 적용하는 것이 좋습니다. 상향식 통합 테스트는 점진적으로 단계별로 진행을 할 수 있지만, 상위에 있는 테스트가 다른 단위 테스트와 합쳐질 때 오류가 발생할 경우 아래의 하위 단위 테스트를 다시 체크해야 하므로, 시간이 오래 걸릴 수 있다는 단점을 가지고 있습니다.
'개발일지' 카테고리의 다른 글
04.10 TIL (0) | 2023.04.10 |
---|---|
04.09 TIL (테스트 코드) (0) | 2023.04.09 |
04.07 (Refactoring) (0) | 2023.04.07 |
04.06 TIL (Nginx) (0) | 2023.04.07 |
04.04 TIL (SSE) (0) | 2023.04.07 |