728x90
Fast
테스트코드가 빠르게 수행될 수 있도록 만드는 것 즉 느린것에 대한 의존성 낮추기
테스트하고자 하는 코드에서 파일을 읽거나 데이터베이스에 접근하거나 네트워크를 사용한다면 이건 테스트 코드를 느리게 만들 수 있습니다.
Isolated
고립적으로 독립적으로 만들어야 한다는 원칙, 최소한의 유닛으로 검증해야합니다.
Repeatable
반복이 가능하도록 만들어라 이 말은 테스트 코드를 실행 할 때마다 동일한 결과를 유지 해야 한다.예) 다른 테스트 코드에 의존하거나 네트워크나 외부적 환경에 의존하는 코드는 환경에 의해서 결과 값이 달라집니다. 그렇기 때문에 테스트 코드는 환경에 영향을 받지 않도록 작성해야한다.
Self-Validating
테스트코드는 스스로 실행한 값과 예상 값을 비교해서 성공하거나 실패할 수 있도록 해야합니다. 더 나아가서 새로운 기능을 추가할 때 기존에 있는 테스트 코드에 영향을 주는지 확인하지 않으면 테스트 코드가 있으나 없으나 똑같습니다. 그렇기 때문에 CI/CD같은 자동화 프로세스를 도입해서 리파지토지에 새로운 코드가 추가가 된다면 모든 테스트가 실행이 되어서 기존에 영향을 주진 않는지 실패하는 테스트 코드는 없는지 검증하는 것도 도입하는 것이 좋습니다.
Timely
시기 적절하게 테스트 코드 작성해야 합니다. 코드를 추가하고 기능을 수정한 다음에 사용자에게 배포하고 나서 테스트 코드를 작성하는 것은 무의미할 것입니다.
728x90