비동기 코드는 작업이 끝날 때까지 자동으로 기다려주지 않기 때문에, 성공과 다양한 실패 경로를 명확하게 처리하고 테스트하는 것이 중요하다.
예제 6-1 isWebsiteAlive( ) 콜백과 async/await 버전 → **콜백**
예제 6-1 isWebsiteAlive( ) 콜백과 async/await 버전 → **async/await**
콜백(Callback):
CompletableFuture 방식:
예제 6-2 초기 통합 테스트