Разлика между тестване с бяла кутия и черна кутия

White-Box vs Black-Box тестване
 

Термините White-Box и Black-Box се използват в софтуерното инженерство. Това са два от подходите за тестване, които се използват при тестване на софтуер, процесът за даване на гаранция за качеството на софтуера на клиента. Тестване на софтуера (което обикновено се извършва чрез изпълнение на софтуера) се провежда с намерението да се намерят грешки (известни също като софтуерни грешки) в софтуера.

Какво е тестване в бяла кутия?

Тестването в бяла кутия се използва за тестване на софтуерна система въз основа на структурата на системата. По-скоро е като прозрачна кутия, през която можем да видим какво става вътре. Той тества дълбоко как всеки модул от системата отговаря според дадените входове. Подобно тестване отнема много време, тъй като е необходимо да се проверяват контролните структури, контури, условия, функции и др. Техниките за тестване на този подход включват тестване на потока от данни, тестване на контролния поток, тестване на клонове и път за всяка единица. За извършване на този вид тестване са необходими високотехнически тестери. Чрез извършване на тест в бяла кутия е по-лесно да се проследят бъговете, които са налични в системата. Тестването в бяла кутия добавя допълнително натоварване към проект, тъй като в някои ситуации е необходимо да се генерират тестови случаи като отделни проекти за отделни тестови области. Следователно, това най-накрая има отрицателни ефекти върху цената на проекта и графика.

Какво е тестване в черна кутия?

Тестването с черни кутии се използва за тестване само на функционалността на системата, независимо от това как системата извършва действие. Целта е главно да се гарантира, че системните изисквания са изпълнени. Подобно е на затворена кутия, където знаем само с какво се храним и накрая дава продукция, но не знаем как е произведена тази продукция. Техниките за тестване включват; тестване на таблица за решения, таблици за преход на състоянието, еквивалентно разделяне и т.н. за тестване на по-високо ниво. Това тестване отнема по-малко време в сравнение с тестването с бели кутии, тъй като това се отнася само за тестване дали системата дава очакван резултат според дадения вход. Тестовите случаи се генерират само според системното изискване. Техническите умения на тестера не са силно очаквани. Ако възникне грешка в системата, не е лесно да я проследите, тъй като не тества вътрешния процес.

Обикновено и двете техники се използват в среда за разработка на софтуер, за да се гарантира, че целият софтуер работи правилно. Няма конкретен ред за извършване на тези две тестове и подходите не принадлежат към нито една конкретна фаза на жизнения цикъл на разработката на софтуер. Въпреки това, тестването в черни кутии може да се извършва от отделен екип, докато тестването с бели кутии за предпочитане се извършва от самите разработчици или програмисти, в допълнение към отделен екип за тестване.

Каква е разликата между тестване в бяла кутия и тестване в черни кутии??

• Тестването в бяла кутия извършва тестове на структурата на системата

• Тестове за тестване на черни кутии, за да се провери съответствието на системното изискване

• Тестването в бяла кутия се нуждае от високотехнически тестери

• Техническите познания на тестера не се очакват силно за тестване в черни кутии

• Лесно проследяване на вътрешна грешка при тестване в бяла кутия

• Лесен за извършване на тест, за да видите как системата ще работи с помощта на тестване в черни кутии