Testing

글 7개

실무의 테스트 - 믿을 수 있는 테스트를 유지한다

Testing · CI

실무의 테스트 - 믿을 수 있는 테스트를 유지한다

테스트는 짜는 것보다 믿을 수 있게 유지하는 게 어렵다. 빠름·독립·결정적이라는 좋은 테스트의 성질, CI에서 자동으로 도는 이유, 무엇을 자동화하고 무엇은 사람이 하는지로 시리즈를 닫는다.

·어떻게 확신하나 7편
TDD - 실패하는 테스트부터 쓴다

Testing · TDD

TDD - 실패하는 테스트부터 쓴다

테스트를 나중이 아니라 먼저 쓴다. 빨강-초록-리팩터 사이클, 왜 먼저 쓰면 요구가 고정되고 설계 압력이 생기는지, 그리고 TDD를 둘러싼 오해와 안 맞는 자리까지.

·어떻게 확신하나 6편
통합과 E2E - 진짜를 붙여 본다

Testing · Integration Test

통합과 E2E - 진짜를 붙여 본다

단위가 다 초록인데 합치면 안 돈다. 이음매는 진짜를 붙여야 보인다. 통합 테스트와 계약 테스트, E2E가 왜 느리고 불안정한지, 플래키를 어떻게 다루는지까지.

·어떻게 확신하나 5편
무엇을 테스트하고 무엇은 안 하나

Testing · Coverage

무엇을 테스트하고 무엇은 안 하나

다 테스트하려다 다 못 한다. 구현이 아니라 행동을, 정상 경로가 아니라 경계를 노린다. 커버리지 숫자의 함정과 깨지기 쉬운 테스트, 그리고 테스트하지 않아도 되는 것까지.

·어떻게 확신하나 4편
테스트 더블 - 진짜 대신 가짜를 끼운다

Testing · Test Double

테스트 더블 - 진짜 대신 가짜를 끼운다

단위 테스트를 빠르게 하려면 진짜 DB·외부 API를 떼고 가짜로 갈아끼워야 한다. dummy·stub·spy·mock·fake가 어떻게 다른지, 상태 검증과 행위 검증의 차이, 과한 목의 함정까지.

·어떻게 확신하나 3편
테스트 피라미드 - 무엇을 얼마나 짜나

Testing · Test Pyramid

테스트 피라미드 - 무엇을 얼마나 짜나

테스트는 단위·통합·E2E 세 층으로 나뉜다. 아래로 갈수록 빠르고 싸서 많이, 위로 갈수록 느리고 불안정해서 적게. 뒤집히면 아이스크림콘 안티패턴이 되는 이유까지.

·어떻게 확신하나 2편
왜 테스트하나 - 확신이 변경을 두렵지 않게 한다

Testing · Unit Test

왜 테스트하나 - 확신이 변경을 두렵지 않게 한다

테스트를 귀찮은 숙제로 여기면 손해는 나중에 온다 - 고칠 때마다 무서워지는 코드로. 테스트가 회귀 안전망이자 실행되는 문서이자 설계 압력이 되는 이유를 본다.

·어떻게 확신하나 1편