통합 테스트 란 무엇입니까?
통합 테스트는 프로그램 또는 하드웨어 구성 내의 여러 장치 또는 모듈을 모아서 테스트하는 소프트웨어 개발 및 테스트 단계입니다. 이러한 다양한 장치는 일반적으로 각 장치가 올바르게 작동하는지 확인하기 위해 개별적으로 테스트되었습니다. 이 테스트 단계에서는 이러한 개별 장치를 더 큰 시스템에 통합합니다. 이는 소프트웨어 개발에서 더 큰 프로그램의 여러 측면이 함께 작동하거나 다른 장치간에 적절한 기능을 보장하기 위해 하드웨어 테스트를 수행 할 수 있도록하기 위해 수행 될 수 있습니다. 통합 테스트는 많은 버그를 발견하고 전체 소프트웨어 또는 하드웨어의 초기 릴리스 버전을 개발할 수 있으므로 테스트의 핵심 단계입니다.
통합 및 테스트 또는 I & T라고도하는 통합 테스트는 일반적으로 테스트의 두 번째 주요 단계로 간주됩니다. 첫 번째 단계는 단위 테스트라고하며 개별 단위 또는 더 큰 프로그램 또는 시스템의 일부를 테스트하여 각 단위가 자체적으로 작동하는지 확인하는 데 중점을 둡니다. 이러한 개별 단위는 각각 단위 테스트를 통과 한 후에 더 큰 그룹으로 함께 작동 할 수 있도록 통합 테스트에 통합됩니다. 그 후에는 일반적으로 시스템 테스트라고하는 전체 시스템의 일부로 개발 및 테스트중인 전체 시스템 또는 프로그램으로 구성됩니다.
일반적으로 사용되는 몇 가지 일반적인 방법이 있지만 통합 테스트를 수행하는 방법에는 여러 가지가 있습니다. 상향식 테스트는 매우 일반적이며 낮은 수준의 시스템부터 시작하여 통합 시스템의 다양한 측면을 테스트합니다. 시스템의 이러한 "하단"측면이 테스트를 통과하면 테스트는 더 중요한 측면으로 "위로"이동합니다. 최고 수준의 시스템이 먼저 테스트되고 프로세스가 계속 "낮은 수준"으로 이동하는 하향식 통합 테스트도 수행 할 수 있습니다.
그러나이 두 가지 유형의 통합 테스트의 주요 문제점 중 하나는 기본 기능이있는 제품의 초기 릴리스를 쉽게 구축 할 수 없다는 것입니다. 이러한 유형의 알파 버전 릴리스는 더 많은 테스트 기회에 필수적 일 수 있으므로 일반적으로 이러한 릴리스를 허용하려면 다른 접근 방식을 취해야합니다. 이러한 접근 방식 중 하나는 통합 시스템의 모든 부분을 동시에 테스트하는 "빅뱅"형태의 테스트입니다. 테스트 할 소프트웨어에 문제 나 버그가 거의없는 경우 유리할 수 있지만 너무 많은 경우 특정 문제를 정확히 찾아 내기가 어려울 수 있습니다.
이러한 문제 중 일부를 완화하기 위해 "샌드위치 테스트"라고하는 통합 테스트 유형도 있습니다. 기본적으로이 유형의 테스트는 하향식 테스트와 상향식 테스트를 동시에 시작하며 두 가지 형태의 테스트는 모두“중간에서 만나는 것”으로 시작합니다. 이는 하향식 테스트의 특권 인 기본 논리 시스템의 조기 테스트를 가능하게합니다. 상향식 테스트와 같이 더 작은 문제를 조기에 식별합니다. 이러한 테스트는 제품의보다 광범위한 테스트 또는 고급 미디어 데모를 위해 제품의 초기 릴리스 버전을보다 빠르게 생성 할 수 있습니다.