테스트가 독립적으로 구성되게 하는 것은 테스트의 신뢰성과 반복성 그리고 유지보수를 쉽게하는 것을 보장합니다.
이렇게 독립적으로 구성된 테스트는 하나의 테스트가 변해도 다른 테스트에는 영향을 미치지 않습니다.
아래는 시스템 아키텍쳐에서 독립적인 테스트를 유지하는 방법입니다.
아래는 테스트를 가치있게 만들기 위한 지침들에 대한 설명입니다.
가정을 하나 해봅시다.
여러분은 계속 업데이트 되어야 하는 UI를 만듭니다.
그렇기 때문에 시간이 지나면 스크립트는 업데이트 되어야 합니다.
여기서 두가지 중요한 점이 있습니다.
대부분의 스크립트는 쓰고 버리는 것이 아니기 때문에 작성한 각 스크립트는 유지 관리되어야 합니다.
또한 스크립트 작성 방법은 유지 및 관리에 필요한 노력과 시간에 상당한 영향을 미칩니다.
이러한 상황에서 우리의 스크립트는 어떻게 되어야 할까요?
간단하고 일관성있고 읽기 쉬우면 됩니다.
Simplicity
스크립트의 목표를 생각하며 가능한 지나치게 복잡한 솔루션을 피해야 합니다.
Conciseness
스크립트를 가능한 짧게 유지해야 합니다.
Readability
읽기 쉽게 만들어야 합니다.
자동화된 테스트의 경우 아래의 조건을 만족할 때 효과적입니다.
1. 목표 기능의 상태를 정확히 확인할 때
2. 합리적인 시간안에 반환할 때
3. 사람에 의해 쉽게 해석되는 결과를 줄 때
테스트의 중복을 피하기 위해 테스트는 의존성을 가지게 되는 경우가 있습니다.
그러나 테스트가 의존성을 가지는 것은 좋지 않습니다.
이유는 아래와 같습니다.
1. Lower test result readability
2. Harder maintenance
3. Lack of flexibility and parallelisation