주요 차이점 : 화이트 박스 테스트는 테스터가 테스트 할 애플리케이션의 내부 동작을 파악하고 고려하는 소프트웨어 테스트 기술입니다. 블랙 박스 테스팅은 테스트 할 프로그램의 적용이 테스터에게 알려지지 않았거나 고려되지 않은 소프트웨어 테스팅 기술입니다.
블랙 박스 테스트는 요구 사항과 사양만을 기반으로하는 테스트 전략입니다. 테스트중인 응용 프로그램에서 소프트웨어의 내부 경로, 구조 또는 구현에 대한 지식이 필요하지 않습니다. 그러나이 전략은 테스트 프로그램에서 오류 또는 결함을 찾는 데있어 테스터의 접근 방식을 최소화합니다. 또한, 테스터의 내부 애플리케이션 지식이 부족하기 때문에 결함이 수정되지 않습니다.
블랙 박스 테스트는 시스템의 외부 레벨에서 수행됩니다. 출력이 주어진 입력에 대해 올바른지 여부를 단순히 확인합니다. 응용 프로그램의 기능을 확인하고 테스트합니다. 또한 시스템의 내부 흐름이나 설계에 대한 사용자의 지식은 시스템이 어떻게 만들어 졌는지에 대한 정보없이 단순히 시스템을 테스트하기 때문에 필요하지 않습니다.
화이트 박스 테스트는 내부 경로, 코드 구조 및 테스트중인 소프트웨어의 구현을 기반으로하는 테스트 전략입니다. 일반적으로 상세한 프로그래밍 기술이 필요합니다. 이 전략은 다른 방법에 비해 버그 및 결함을 신속하게 찾는 데 도움이됩니다. 애플리케이션에서 테스트 할 대상을 정확하게 지정함으로써 완벽한 테스트 적용 범위를 제공합니다.
화이트 박스 테스트에는 응용 프로그램을 철저히 테스트해야합니다. 일반적으로 데이터 흐름, 예외 및 오류를 확인하는 작업이 포함됩니다. 또한 결함 처리를 검사하고 결과를 코드와 비교합니다. 완전한 지식을 갖춘 테스트 팀 또는 시스템을 말하며, 모든 소스 코드 및 기타 건축 문서에 액세스합니다. 그들은 코드의 내부 논리와 응용 프로그램을 테스트합니다.
화이트 박스 테스트와 블랙 박스 테스트의 비교 :
화이트 박스 테스트 | 블랙 박스 테스팅 | |
정의 | 이것은 테스터가 프로그램의 내부 구조, 설계 및 구현을 알고있는 소프트웨어 테스팅 방법입니다. | 테스터가 프로그램의 내부 구조, 설계 및 구현을 알 수없는 소프트웨어 테스팅 방법입니다. |
에 의해 테스트 됨 | 소프트웨어 개발자가 수행합니다. | 그것은 전문 테스트 팀에 의해 수행됩니다. |
코딩 지식 | 내부 코딩에 대한 지식이 필요합니다. | 내부 코딩에 대한 지식이 필요하지 않습니다. |
관심사 | 그것은 프로그램의 구현 테스트와 관련이 있습니다. | 그것은 프로그램의 구조와 관련이 없습니다. |
테스트 | 주로 다음과 같은 낮은 수준의 테스트에 적용 할 수 있습니다.
| 주로 다음과 같은 높은 수준의 테스트에 적용됩니다.
|
지식 | 테스트를 위해서는 구현 지식이 필요합니다. | 구현 지식은 테스트에 필요하지 않습니다. |
시험 기준 | 테스트 사례는 세부 디자인을 기반으로합니다. | 테스트 케이스는 필수 사양을 기반으로합니다. |
시각 | 그것은 시간이 걸리고 철저합니다. | 그것은 더 적은 시간과 소모적입니다. |
알고리즘 테스트 | 알고리즘 테스트에 적합합니다. | 알고리즘 테스트에는 적합하지 않습니다. |
시험 방법 | 데이터 영역 및 내부 경계가 더 잘 테스트됩니다. | 시행 착오 방법으로 만 수행 할 수 있습니다. |
장점 |
|
|
단점 |
|
|