learn/methodology

테스트 주도 개발 (Test Driven Development : TDD)

사겅이 2023. 9. 21. 23:59

출처 : https://www.nimblework.com/agile/acceptance-test-driven-development-atdd/

 

코드를 작성하기 전에 테스트 케이스를 먼저 작성하는 접근 방식

 

  • 테스트 작성 (Test): 개발자는 먼저 개발할 기능 또는 모듈에 대한 테스트 케이스를 작성합니다. 이 테스트 케이스는 해당 기능이나 모듈이 어떻게 동작해야 하는지를 정의합니다.

  • 테스트 실행 (Run): 작성한 테스트 케이스를 실행합니다. 이때, 아직 개발되지 않은 코드이므로 테스트는 실패할 것입니다.

  • 코드 작성 (Code): 테스트를 통과하기 위한 코드를 작성합니다. 목표는 테스트를 통과하는 코드를 작성하는 것입니다.

  • 테스트 재실행 (Run): 코드를 작성한 후에는 다시 테스트를 실행하여 테스트 케이스가 통과하는지 확인합니다. 통과하지 않으면 코드를 수정하여 다시 시도합니다.

  • 리팩토링 (Refactor): 테스트가 통과되면 코드를 리팩토링하여 더 나은 구조와 성능을 확보합니다.

 

TDD의 핵심 아이디어는 개발자가 코드를 작성하기 전에 원하는 동작을 명확히 정의하고, 이를 테스트로 검증하며 개발하는 것임. 이를 통해 코드 품질을 향상시키고 버그를 미리 발견하여 수정하는데 도움이 됨. 또한, 변경사항이 발생할 때 테스트를 실행하여 기존 기능에 영향을 미치지 않는지 확인할 수 있어 유지보수가 용이함.

'learn > methodology' 카테고리의 다른 글

객체 지향 프로그래밍 (Object-Oriented Programming : OOP)  (0) 2023.09.26
스크럼 (Scrum)  (0) 2023.09.21
애자일 (Agile)  (0) 2023.09.21
폭포수(Waterfall)  (0) 2023.09.21