Arrange-Act-Assert 의 고전적인 테스트 패턴과 관련하여 저는 종종 Act 이전에 반대 주장을 추가하는 것을 발견합니다. 이렇게하면 전달 된 주장이 실제로 동작의 결과로 전달되고 있음을 알 수 있습니다.
Red-green-refactor의 빨간색과 유사하다고 생각합니다. 테스트 과정에서 빨간색 막대를 본 경우에만 초록색 막대가 차이를 만드는 코드를 작성했음을 의미합니다. 통과하는 테스트를 작성하면 모든 코드가 만족할 것입니다. 마찬가지로, Arrange-Assert-Act-Assert와 관련하여 첫 번째 주장이 실패하면 어떤 Act가 최종 Assert를 통과했을 것임을 알고 있습니다. 따라서 실제로 Act에 대한 어떤 것도 확인하지 않았습니다.
테스트가이 패턴을 따르나요? 그 이유는 무엇?
업데이트 설명 : 초기 주장은 본질적으로 최종 주장과 반대입니다. Arrange가 작동했다는 주장이 아닙니다. Act가 아직 작동하지 않았다는 주장입니다.