Тестування методом чорної скриньки

Тестування методом «чорної скриньки» — це метод тестування програмного забезпечення, при якому перевіряється робота програми без знання її внутрішньої побудови та схеми роботи. Іншими словами, не маючи доступу до коду програми. Цей метод тестування може бути застосований практично до будь-якого рівня тестування програмного забезпечення: модульного, інтеграційного, системного або приймального тестування. Іноді цей метод називають тестуванням на основі специфікації.[1]

Чорна скринька ред.

Під «чорною скринькою» слід розуміти об'єкт дослідження, внутрішній устрій якого невідомо. Поняття «чорна скринька» було запропоновано У. Р. Ешбі. У кібернетиці воно дозволяє вивчати поведінку систем, тобто їх реакцій на різноманітні зовнішні впливи і в той же час абстрагуватися від їх внутрішнього устрою.

Особливості тестування ред.

При цьому виді тестування конкретні знання коду програми, внутрішньої структури та знань програмування загалом не потрібні.[2] Тестувальник знає, що саме має робити програмне забезпечення, але не знає, як саме вона це робить. Наприклад, тестувальник знає, що на певні вхідні дані програма повертає певний незмінний результат, але не знає про те, як саме програмне забезпечення створює вихідні дані.[3]

Тестові кейси ред.

Всі тестові кейси будуються на основі специфікацій та вимог, тобто того, що програма повинна робити. Тестові приклади, як правило, походять від зовнішніх описів програмного забезпечення, включаючи технічні характеристики, вимоги та параметри конструкції. Незважаючи на те, що використовувані тести мають переважно функціональний характер, можуть бути використані і нефункціональні тести.

Розробник тестів обирає як дійсні, так і недійсні вхідні дані та визначає правильний результат, часто за допомогою тестового оракула або попереднього результату, які є придатними і без знання внутрішньої структури об'єкта тестування.

Методи розробки тестів ред.

Для «чорної скриньки» типові методи розбробки тестів включають:[4]

  • Тестування по таблиці рішень
  • Попарне тестування
  • Тестування з розбиттям на еквівалентність
  • Аналіз граничних значень
  • Граф причин-наслідків
  • Вгадування помилок (error guessing)
  • Тестування станів переходу
  • Тестування сценаріїв використання
  • Перевірка синтаксису
  • Комбіновані техніки

Тестування на проникнення ред.

При тестуванні на проникнення метод чорної скриньки відноситься до ситуації, коли етичний хакер не знає про систему, на яку здійснюється атака. Метою тесту на проникнення в чорну скриньку є імітація зовнішнього злому або кібератаки.

Дивитися також ред.

Примітки ред.

  1. Jerry Gao; H.-S. J. Tsao; Ye Wu (2003). Testing and Quality Assurance for Component-based Software. Artech House. с. 170–. ISBN 978-1-58053-735-3.
  2. Milind G. Limaye (2009). Software Testing. Tata McGraw-Hill Education. с. 216. ISBN 978-0-07-013990-9.
  3. Patton, Ron (2005). Software Testing (вид. 2nd). Indianapolis: Sams Publishing. ISBN 978-0672327988.
  4. Forgács, István; Kovács, Attila (2019). Практичне проектування тестів: Вибір традиційних та автоматизованих методів проектування тестів. ISBN 1780174721.

Джерела ред.