개발자는 우리가 코딩 한 부분이 요구 사항에 따라 작동 할 것으로 예상되는 방식을 알 수 있도록 초기 테스트를 수행해야합니다. 그래서 우리는 우리가 작성한 코드에 대한 단위 테스트를 작성하고 정상 테스트를 수행했습니다.
다음 단계는 코드를 작성할 때 개발자가 볼 수없는 것을 찾는 QA의 작업입니다. 개발자는 더 높은 수준으로 생각하지만 사용자는 같은 수준으로 생각하지 않을 수 있습니다. 개발자가 자신의 작품을 테스트하고 텍스트 상자에 텍스트를 입력해야 할 때 항상 전체 문자열을 입력하여 사용자가 그렇게 할 수 있습니다. 사용자가 할 수도 있지만 텍스트에 % & $ ^와 같은 특수 문자를 입력하면 응용 프로그램이 중단되어 최종 사용자에게 좋지 않은 것처럼 보입니다. 개발자는 그렇게 생각하도록 훈련받지 않았기 때문에 발생할 수있는 모든 가능성에 대해 생각할 수없고 생각하지 않을 것입니다. QA (테스터)에 관해서는 항상 사용자 가이 응용 프로그램을 중단하고 책의 모든 어리석은 일을 시도하기 위해 할 수있는 일을 생각합니다. 사용자는 어리석지 않지만 우연히 남겨두면 안됩니다.
이제 우리는 일반적으로 동시에 둘 이상의 작업이 수행되고 둘 다 생산 될 것임을 이해해야합니다. 개발자는 자신의 작품 만 테스트하고 제대로 작동한다고 생각할 수 있지만 두 가지 다른 조각의 조합이 응용 프로그램을 중단시킬 수 있음을 알기 위해 푸시되는 모든 조각에 대해 전체 회귀 테스트를 수행해야합니다. 잘 보이지 않습니다. 또한 부하 테스트 시나리오와 테스터가 더 잘 알고있는 기타 사항도 고려해야합니다.
마지막으로 UAT (User Acceptance Test)를 거쳐 우리가 한 일이 예상 한 것인지 확인해야합니다. 일반적으로 요구 사항이 BA를 통과하더라도 최종 사람은 모양이 무엇인지 정확히 알지 못하고 예상 한대로 생각하지 않거나 더 좋아 보이게 만들거나 다른 이유로 스크랩을 할 수 있습니다. 그들은 이미 사용 가능한 기능과 함께 가지 않을 것이라고 생각합니다.
위에서 설명했듯이 이것은 매우 중요하며 개발자가 직접 수행 할 수 없으며 응용 프로그램이 제대로 작동하는 데 절대적으로 필요합니다. 경영진은 이것이 보수적 인 접근 방법이라고 말할 수 있지만 더 나은 접근 방법입니다. 위에서 언급 한 내용을 약간 조정할 수는 있지만 전체적으로 피할 수는 없습니다.