목록TestCode (2)
Jake- ios 성장일기
1. TDD란? (Test-Driven-Development) TDD는 테스트 주도 개발이란 뜻으로, 기존에 코드를 작성하고 테스트코드를 작성하던 방식과 다르게,실패하는 테스트코드를 먼저 작성하고, 최소한의 통과로 개선하고, 리팩토링 하는 사이클로 진행된다.TDD는 테스트만을 위한 기술이 아닌, 소프트웨어 설계 방법론에 가깝다고 한다. TDD의 아이러니 중 하나는 테스트 기술이 아니라는 점이다. TDD는 분석 기술이며, 설계 기술이기도 하다. - 켄트 벡 2. TDD 사이클: Red - Green - Refactor TDD는 3단계 사이클로 진행된다고 한다. 1. Red 아직 구현되지 않은 기능에 대해 테스트부터 먼저 작성실패되도록 테스트를 구성하고, 코드를 테스트를 통과하기 위해 최소한으로 개선한다..
테스트 가능한 구조소프트웨어를 설계할 때 자동화된 테스트를 쉽게 설계하고, 실행할 수 있도록 만든 코드구조.품질, 안정성, 유지보수성을 높이는데 중요할 역할을 수행 테스트가 가능하려면? 1. 단일책임원칙(SRP)을 잘 따라야 한다. 단일책임원칙이란? - 각 클래스나 함수가 하나의 책임만 가지도록 설계 만약 어떤 함수나 객체가 여러 개의 책임을 가지고 있게 된다면, 테스트를 하기 위한 하나의 기능만 분리해서 테스트하기가 어려워진다.또한 그 객체에 대해서 테스트가 실패했을 때 여러 책임을 가지고 있다면, 그 테스트한 기능만의 문제인지 혹은 복합적인 이유 때문인지 알아내기 어려워진다.단일책임원칙을 잘 지킨 코드는 그 객체의 책임이 분명하여, 그 하나의 책임에 대한 테스트코드를 짜기 수월해진다. 2. 의존성 주..