BDD

    TDD와 BDD

    TDD 일반적인 개발 과정 디자인 → 코드 작성 → 테스트 ←---------------- 설계 수정 정확한 프로그래밍 목적을 디자인 단계에서 반드시 미리 정의해야한다. RED: 실패하는 테스트 만들기 GREEN: 테스트에 통과할 만한 작은 코드를 작성하기 REFACTOR: 반복되는 코드, 긴 메소드, 큰 클래스, 긴 매게변수 목록 등등 코드를 좀 더 효율적으로 바꾼다. TDD를 하면 좋은 경우 처음해보는 프로그램 주제 나에 대한 불확실성이 높을 경우 고객의 요구조건이 바뀔 수 있는 프로젝트 외부적인 불확실성이 높은 경우 개발하는 중에 코드를 많이 바꿔야 된다고 생각하는 경우 내가 개발하고 나서 이 코드를 누가 유지보수할지 모르는 경우 즉, 불확실성이 높을 때 TDD를 하면 된다. TDD를 하면 ‘Tes..

    RxNimble + Quick Unit Test

    Quick BDD(Behavior-Driven Development)를 위한 프레임워크 각 클로져 단위 마다 descirption을 묶어서 사용하기 때문에 가독성이 좋음 Given(준비) - When(실행) - then(검증) descibe(Given) → context(When) → it(Then) 순으로 구성 beforeEach 초기화 블록을 통해 it 이 실행 되기 이전의 클로져에 있는 beforeEach 블록들을 순차적으로 실행함 afterEach 를 통해 it 블록이 실행 된 이후 해야할 초기화 작업을 할 수 있음. beforeEach 를 통해 각 it 테스트는 ‘순수한' 상태에서 시작하는 것이 좋음 각 it를 테스트 하고 ViewModel의 초기화, 동작이 진행된 코드를 다시 사용해서 테스트 ..