테스트코드

테스트코드/이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법

[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 7장: 테스트 주도 설계

본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다. 설계가 단위 테스트에 미치는 영향 TDD를 사용할 때 테스트 코트는 첫 번째 클라이언트가 된다 설계 → 인터페이스 작성 → 테스트 코드 작성 → 테스트 코드 수행 → 내부 구현 수정 → 다른 모듈이 사용 테스트는 인터페이스 설계에 의존 인터페이스 설계 품질이 낮으면 테스트 작성이 어려움 단위 테스트가 설계에 미치는 영향 테스트가 있기 때문에 리팩터링 가능 두려움 없이 구현 설계를 과감하게 개선 리팩터링은 요구사항을 그대로 충족하면서 내부 구현을 수정하는 것 단위 테스트가 존재는 요구사항을 충족함을 보장한다 단위 테스트에 의지하는 인터..

테스트코드/이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법

[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 6장: Should I test private methods

본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다. 비공개 모듈 테스트 비공개 모듈의 작성과 사용은 공개 모듈의 구현 영역에 속한다 비공개 모듈 테스트는 공개 모듈 구현을 노출하는 것이다 테스트가 공개 모듈 구현에 의존 정보 숨김 위배 SUT와 테스트 사이의 높은 결합 결론적으로 private method는 테스트하지마라!

테스트코드/이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법

[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 5장: Mockists vs Classicists

본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다. Sociable 테스트 vs Solitary 테스트 1) Sociable 테스트 시스템과 의존성(DOC)을 함께 단위 테스트하는 방식 즉, 시스템과 함께 의존성까지 구동시켜 테스트 2) Solitary 테스트 시스템과 의존성을 분리시켜서 단위 테스트하는 방식 즉, 의존성 대신 테스트 대역을 사용하여 테스트 가정의 안정도 테스트 대역이 늘어날수록, 테스트 대역이 구현하는 인터페이스가 복잡할수록 가정이 불안정해진다 테스트 대역이 줄어들수록, 테스트 대역이 구현하는 인터페이스가 단순할수록 가정이 안정된다 Mock의 위험 상태검증 vs 행위..

테스트코드/이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법

[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 4장: 테스트 대역

본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다. 대역과 가정 DOC(depended-on component) 준비 비용이 큰 경우 DOC란 대상 코드가 의존하는 코드를 의미한다 구동에 많은 자원이 필요 환경 제어가 어려움 DOC가 SUT(system under test)에 제공하는 계약(인터페이스)을 준수하는 대역 코드를 사용 대역 코드가 계약을 DOC와 동일하게 준수할 것이라고 가정(assume) 테스트 대역의 종류 1) Dummy SUT 준비를 위해 해결되어야 하는 의존성이 테스트 대상 논리에 의해 사용되지 않는 경우에 의존 요소를 대신하는 테스트 대역 2) Stub 간접 입력..

테스트코드/이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법

[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 3장: 입력과 출력

본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다. 입력과 출력 거의 대부분의 프로그래밍 코드는 입력을 받아 출력을 수행한다 입력 -> 논리 -> 출력 직접 입력과 직접 출력 공개된 인터페이스를 통한 입력과 출력 다루기 간단함 간접 입력과 간접 출력 입력된 인터페이스를 통한 입력과 출력 다루기 복잡함 부작용 인터페이스 설계에 드러나지 않은 출력 반환 값 외 출력 자주 사용되는 부작용 실패, 지연, 간접출력

코택
'테스트코드' 카테고리의 글 목록 (3 Page)