요즘 테스트 코드를 적을때는 항상 given - when - then 방식으로 많이 작성한다. given 에서는 Test 로 작성될 SUT 에 대한 의존성 주입 및 들어갈 값들에 대한 정의를 내린다. when 에서는 Test 할 로직을 실행하고 then 에서 결과값을 검증한다. 아래도 위와 같이 given - when - then 으로 작성된 테스트 코드이다. class CustomerTest { @Test void purchaseSucceedsWhenEnoughInventory() { //given var store = new Store(); store.addInventory(Product.SHAMPOO, 10); var customer = new Customer(); //when boolean pur..