화이트 박스 테스트와 블랙 박스 테스트의 차이점

주요 차이점 : 화이트 박스 테스트는 테스터가 테스트 할 애플리케이션의 내부 동작을 파악하고 고려하는 소프트웨어 테스트 기술입니다. 블랙 박스 테스팅은 테스트 할 프로그램의 적용이 테스터에게 알려지지 않았거나 고려되지 않은 소프트웨어 테스팅 기술입니다.

블랙 박스 테스트는 행동 테스트, 데이터 기반 테스팅 또는 닫힌 상자 테스트라고도합니다. 이것은 '출력이 어떻게 생성되었는지'에 대한 고려없이 시스템에 입력을 제공하고 시스템의 출력을 확인하는 프로세스입니다.

블랙 박스 테스트는 요구 사항과 사양만을 기반으로하는 테스트 전략입니다. 테스트중인 응용 프로그램에서 소프트웨어의 내부 경로, 구조 또는 구현에 대한 지식이 필요하지 않습니다. 그러나이 전략은 테스트 프로그램에서 오류 또는 결함을 찾는 데있어 테스터의 접근 방식을 최소화합니다. 또한, 테스터의 내부 애플리케이션 지식이 부족하기 때문에 결함이 수정되지 않습니다.

블랙 박스 테스트는 시스템의 외부 레벨에서 수행됩니다. 출력이 주어진 입력에 대해 올바른지 여부를 단순히 확인합니다. 응용 프로그램의 기능을 확인하고 테스트합니다. 또한 시스템의 내부 흐름이나 설계에 대한 사용자의 지식은 시스템이 어떻게 만들어 졌는지에 대한 정보없이 단순히 시스템을 테스트하기 때문에 필요하지 않습니다.

화이트 박스 테스팅은 구조적 테스트, 오픈 박스 테스트, 클리어 박스 테스트 또는 유리 상자 테스트라고도합니다. 주어진 출력을 생성하여 시스템에 입력을 제공하고 시스템이 주어진 입력을 처리하는 방법을 확인하는 프로세스입니다.

화이트 박스 테스트는 내부 경로, 코드 구조 및 테스트중인 소프트웨어의 구현을 기반으로하는 테스트 전략입니다. 일반적으로 상세한 프로그래밍 기술이 필요합니다. 이 전략은 다른 방법에 비해 버그 및 결함을 신속하게 찾는 데 도움이됩니다. 애플리케이션에서 테스트 할 대상을 정확하게 지정함으로써 완벽한 테스트 적용 범위를 제공합니다.

화이트 박스 테스트에는 응용 프로그램을 철저히 테스트해야합니다. 일반적으로 데이터 흐름, 예외 및 오류를 확인하는 작업이 포함됩니다. 또한 결함 처리를 검사하고 결과를 코드와 비교합니다. 완전한 지식을 갖춘 테스트 팀 또는 시스템을 말하며, 모든 소스 코드 및 기타 건축 문서에 액세스합니다. 그들은 코드의 내부 논리와 응용 프로그램을 테스트합니다.

화이트 박스 테스트와 블랙 박스 테스트의 비교 :

화이트 박스 테스트

블랙 박스 테스팅

정의

이것은 테스터가 프로그램의 내부 구조, 설계 및 구현을 알고있는 소프트웨어 테스팅 방법입니다.

테스터가 프로그램의 내부 구조, 설계 및 구현을 알 수없는 소프트웨어 테스팅 방법입니다.

에 의해 테스트 됨

소프트웨어 개발자가 수행합니다.

그것은 전문 테스트 팀에 의해 수행됩니다.

코딩 지식

내부 코딩에 대한 지식이 필요합니다.

내부 코딩에 대한 지식이 필요하지 않습니다.

관심사

그것은 프로그램의 구현 테스트와 관련이 있습니다.

그것은 프로그램의 구조와 관련이 없습니다.

테스트

주로 다음과 같은 낮은 수준의 테스트에 적용 할 수 있습니다.

  • 단위 테스트
  • 통합 테스트

주로 다음과 같은 높은 수준의 테스트에 적용됩니다.

  • 수락 테스트
  • 시스템 테스트

지식

테스트를 위해서는 구현 지식이 필요합니다.

구현 지식은 테스트에 필요하지 않습니다.

시험 기준

테스트 사례는 세부 디자인을 기반으로합니다.

테스트 케이스는 필수 사양을 기반으로합니다.

시각

그것은 시간이 걸리고 철저합니다.

그것은 더 적은 시간과 소모적입니다.

알고리즘 테스트

알고리즘 테스트에 적합합니다.

알고리즘 테스트에는 적합하지 않습니다.

시험 방법

데이터 영역 및 내부 경계가 더 잘 테스트됩니다.

시행 착오 방법으로 만 수행 할 수 있습니다.

장점

  • 응용 프로그램 테스트에 도움이되는 데이터 유형을 쉽게 찾을 수 있습니다.
  • 코드 최적화에 도움이됩니다.
  • 추가 코드는 숨겨진 결함을 가져옴으로써 제거됩니다.
  • 테스터의 지식으로 인하여 테스트하는 동안 최대 적용 범위가 달성됩니다.
  • 대규모 코드 세그먼트에 적합하고 효율적입니다.
  • 코드 액세스가 필요하지 않습니다.
  • 사용자 관점은 정의 된 역할을 통해 구분됩니다.
  • 많은 수의 중급 숙련 된 테스터가 테스트를 수행 할 수 있습니다.

단점

  • 비용 증가.
  • 많은 경로가 테스트되지 않으므로 숨겨진 오류를 찾는 것은 불가능합니다.
  • 그것은 유지하기 어려운 특수 도구를 사용합니다.
  • 제한된 범위.
  • 비효율적 인 테스트.
  • 테스터는 특정 코드 세그먼트 또는 오류가 발생하기 쉬운 영역을 대상으로 할 수 없기 때문에 맹인 범위.
  • 테스트 케이스는 설계하기가 어렵습니다.
추천

관련 기사

  • 차이점: Nokia Lumia 620과 Micromax A116 Canvas HD의 차이점

    Nokia Lumia 620과 Micromax A116 Canvas HD의 차이점

    주요 차이점 : 이 브랜드의 최신 스마트 폰 중 하나는 Nokia Lumia 620입니다. Nokia Lumia 620은 Windows Phone 8을 사용해보고 싶지만 너무 많은 돈을 쓸 여유가없는 초보 사용자를 대상으로합니다. Micromax와 Karbonn은 인도 시장에 기반을 둔 두 회사 다. Micromax A116 Canvas HD는 실제로 인기있는 Micromax A110 Canvas 2의 후속 제품으로 모든면에서 이전 제품보다 뛰어납니다. 핀란드의 다국적 통신 및 정보 기술 회사 인 Nokia는 내구성이 뛰어난 휴대 전화로 잘 알려져 있습니
  • 차이점: 분열 감각 장애와 정신 분열증의 차이

    분열 감각 장애와 정신 분열증의 차이

    주요 차이점 : 분열 정동 장애 (Schizoaffective Disorder)는 사람이 반복되는 비정상적인 기분과 정신병 적 구성 요소를 나타내는 정신적 상태입니다. 장애는 일정하며 멀리 가지 않습니다. 그 사람은 끊임없이 행복하고 우울해질 수도 있고, 동시에 행복하고 우울한 것도 혼합 될 수 있습니다. 정신 분열병은 환각, 편집증, 망상 및 혼란스러운 연설과 사고와 관련된 정신 장애입니다. 정신 분열병은 환자가 일반적으로 존재하지 않는 것을보고 믿게 만들고 환자의 편집증을 유발하는 머리 속에 특정 인물과 시나리오를 개발할 수도 있습니다. 분열 정동 장애 (Schizoaffective Disorder) 및 정신 분열증은 이름과 성질이 유사하기 때문에 종종 혼동 스
  • 차이점: C ++과 Python의 차이점

    C ++과 Python의 차이점

    주요 차이점 : C ++은 범용 프로그래밍 언어입니다. 또한 원래의 C 프로그래밍 언어에서 개발되었습니다. C ++은 정적 형식의 자유 형식, 다중 패러다임 및 컴파일 된 프로그래밍 언어입니다. 파이썬은 또 다른 프로그래밍 언어입니다. 그러나 C ++과 완전히 다릅니다. 파이썬은 범용의 높은 수준의 프로그래밍 언어입니다. 파이썬은 코드의 가독성을 강조하면서보다 깔끔하고 직접적인 것으로 간주됩니다. C ++은 범용 프로그래밍 언어입니다. 또한 원래의 C 프로그래밍 언어에서 개발되었습니다. 이것은 Bell Labs의 Bjarne Stroust
  • 차이점: Lenovo IdeaPad Yoga 11과 Dell Latitude 10 Windows Tablet의 차이점

    Lenovo IdeaPad Yoga 11과 Dell Latitude 10 Windows Tablet의 차이점

    주요 차이점 : Lenovo IdeaPad Yoga 11의 독특한 측면은 멀티 모드 360도 플립 디자인을 갖춘 컨버터블 랩탑이라는 것입니다. 이를 통해 장치는 4 가지 디자인 모드를 사용할 수 있습니다. 여기에는 노트북 모드, 태블릿 모드, 텐트 모드 및 마지막으로 대기 모드가 포함됩니다. Lenovo IdeaPad Yoga 11은 11.6 인치 고화질 디스플레이와 무게가 1.27kg (2.8lbs)입니다. NVIDIA Tegra 3 프로세서와 2GB DDR3L RAM에 의해 구동됩니다. Latitude 10 타블렛은 658 그램에서 상당히 매끄럽고 가볍습니다. 이 제품은 10.1 인치 IPS (1366 X 768) 와이
  • 차이점: 설립자와 발기인의 차이점

    설립자와 발기인의 차이점

    주요 차이점 : 창업자는 사업 상 기본적으로 회사를 설립 한 사람입니다. 따라서 설립자는 기본적으로 기업가이기도합니다. 반면 발기인은 사업을 장려하는 사람입니다. 사람들에게 기업에 돈을 투자하게하는 것은 발기인의 책임입니다. 창업자의 정의는 꽤 솔직합니다. 그것은 뭔가를 발견하거나 설립 한 사람입니다. 사업에서 창업자는 기본적으로 회사를 설립 한 사람입니다. 따라서 설립자는 기본적으로 기업가이기도합니다. 창업자는 회사와 사업이 무엇인지, 그리고 어떤 제품이나 서비스가 제공되어야하는지에 대한 아이디어를 제시하는 사람입니다. 설립자는 또한 비즈니스 모델을
  • 차이점: 독감과 돼지 독감의 차이점

    독감과 돼지 독감의 차이점

    주요 차이점 : 일반 독감과 돼지 독감의 주요 차이점은 다른 병원균에 의한 것입니다. 일반적으로 독감으로 알려진 인플루엔자는 Orthomyxoviridae 계통의 RNA 바이러스에 의해 발생합니다. 한편, 신종 인플루엔자는 다른 유형의 바이러스에 의해 발생합니다. 돼지 인플루엔자는 돼지 인플루엔자 바이러스 (SIV) 또는 돼지 인플루엔자 바이러스 (S-OIV)에 의해 발생합니다. 이 바이러스는 돼지에서 흔히 볼 수있는 인플루엔자 바이러스 계열의 균주입니다. 일반적인 독감과 돼지 독감의 가장 큰 차이점은 다른 병원균에 의한 것입니다. 일반적으로 독감으로 알려진 인플루엔자는 Orthomyxo
  • 차이점: 1 차 치아와 영구 치아의 차이

    1 차 치아와 영구 치아의 차이

    주요 차이점 : 일차 치아는 생애주기 동안 인간이 소유 한 첫 번째 치아 집합입니다. 영구 치아는 인간이 소유 한 두 번째 치아 집합입니다. 임시 치아는 20 개이며 영구 치아는 보통 32 개입니다. 1 차 또는 젖니가 아이들의 미래의 영구 치아를위한 공간을 유지합니다. 형태학 등과 관련하여 원발 및 영구 치아에는 많은 차이점이 있습니다. 인간은 일생에 두 가지 종류의 치아 세트를 소유합니다 - 일차 및 영구 치아. 1 차 치아는 또한 아기, 우유, 낙엽 또는 유즙 치아라고도합니다. 낙엽이라는 용어는 '떨어지다'를 의미합니다. 이 치아는 첫 번째 치아 세트이며 20 개 (각 턱 당 10 개)입니다. 이 치
  • 차이점: 삼성 갤럭시 노트 8.0과 넥서스 10의 차이점

    삼성 갤럭시 노트 8.0과 넥서스 10의 차이점

    주요 차이점 : 삼성 갤럭시 노트 8.0은 갤럭시 노트 II와 갤럭시 노트 10.1 사이의 간격을 메우는 것을 목표로합니다. 갤럭시 노트 8은 800 x 1280 픽셀의 해상도를 가진 8 인치 TFT 커패시 티브 터치 스크린을 특징으로합니다. 이 디바이스는 쿼드 코어 1.6 GHz Cortex-A9와 2 GB RAM으로 구동된다. 이 장치는 Android OS, v4.1.2 (Jelly Bean)에서 실행됩니다. Nexus 10은 Android 4.2 (또는 Jelly Bean이라고도 함) 운영체제를 실행하는 태블릿 컴퓨터로 출시되었습니다. 그것은 삼성과 협력하여 개발되었
  • 차이점: 과립 설탕과 가루 설탕의 차이점

    과립 설탕과 가루 설탕의 차이점

    주요 차이점 : 설탕은 감미료가 첨가 된 식품 물질의 일반적인 이름입니다. Sucrose, table sugar는 주로 사탕 수수 또는 사탕무에서 추출합니다. 설탕은 18 세기에 인기있는 감미료가되었습니다. 가장 일반적으로 사용되는 설탕은 과립 설탕입니다. 이것은 우리가 매일 사용하는 설탕뿐만 아니라 대부분의 조리법에서도 그렇습니다. 가루 설탕은 캐스터 설탕보다 미세한 최고급 설탕입니다. 종종 10 배 설탕, 과자 장수 설탕 또는 착빙 설탕으로 불립니다. 프랑스에서는 Sucre Glace라고 불립니다. 설탕은 감미료가 첨가 된 식품 물질의 일반적인 이름입니다. 설

에디터의 선택

낙태와 유산 간의 차이점

주요 차이점 : 낙태는 임신 기간이 끝나기 전에 태아 또는 태아를 자궁에서 제거하거나 강요하는 고의적 인 행위입니다. 낙태는 다른 한편으로는 낙태가 일어날 때이지만 고의적이거나주의 깊은 것이 아닙니다. 유산은 보통 임신 중에 방해가되어 태아가 자라지 못하게하는 사고입니다. 삶의 기적 중 하나는 생명체를 양산하고 생명을주는 능력입니다. 생명을 부여하기 위해, 생물은 보통 성행위에 참여하고, 아이를 임신시키고, 아기를 임기로 가져 가서 출산해야합니다. 그러나이 과정에서 방해 할 수있는 많은 것들이 있습니다. 낙태와 낙태는 임신을 끝낼 수있는 두 가지 방법입니다. 낙태와 유산 간의 주된 차이점은 낙태가 보통주의 깊다는 것입니다. 임기가 끝나기 전에 자궁에서 태아 나 태아를