더북(TheBook)

value 변수와 criterion.getWeight()가 매칭되어 match 변수가 true일 때(30행)

두 조건문이 모두 false여서 결과적으로 match 변수가 false가 될 때(30행)

match 변수가 false이고 criterion.getWeight()Weight.MustMatch여서 kill 변수가 true일 때(34행)

match 변수가 true이기 때문에 kill 변수가 변하지 않을 때(34행)

criterion.getWeight()Weight.MustMatch가 아니기 때문에 kill 변수가 변하지 않을 때(34행)

match 변수가 true이기 때문에 score 변수가 업데이트되었을 때(37행)

match 변수가 false이기 때문에 score 변수가 업데이트되지 않았을 때(37행)

kill 변수가 true이기 때문에 matches 메서드가 false를 반환할 때(42행)

kill 변수가 false이고 anyMatches 변수가 true이기 때문에 matches 메서드가 true를 반환할 때(42행과 44행)

kill 변수가 false이고 anyMatches 변수가 false이기 때문에 matches 메서드가 false를 반환할 때(42행과 44행)

이 조건 목록(이외에도 좋은 예를 더 만들 수 있음) 15개는 코드를 대략적으로 읽어 보고 만든 것입니다. 지금까지 우리는 코드가 분기하거나 데이터 변형이 서로 다른 결과를 만들어 내는 것을 잡아냈습니다. 테스트를 작성하고 나면 코드가 실제로 어떻게 동작하는지 더 잘 이해할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.