База знань

Статичне та динамічне тестування

За критерієм запуску програми (чи виконується програмний код) виділяють ще два типи тестування: статичне та динамічне.

static

Статичне тестування – тип тестування, який припускає, що програмний код під час тестування не буде виконуватися. При цьому саме тестування може бути як ручним, так і автоматизованим.

Статичне тестування починається на ранніх етапах життєвого циклу ПЗ і є, відповідно, частиною процесу верифікації. Для цього типу тестування в деяких випадках навіть не потрібен комп’ютер, – наприклад, при перевірці вимог.

Більшість статичних технік можуть бути використані для «тестування» будь-яких форм документації, включаючи вичування коду, інспекцію проектної документації, функціональної специфікації та вимог.

Статичне тестування також може бути автоматизоване – наприклад, можна використовувати автоматичні засоби перевірки синтаксису програмного коду.

Види статичного тестування:

– вичитування вихідного коду програми;

– перевірка вимог.

dynamic

Динамічне тестування – тип тестування, який передбачає запуск програмного коду. Таким чином, аналізується поведінка програми під час її роботи.

Для виконання динамічного тестування необхідно, щоб програмний код, що тестується, був написаний, скомпільований та запущений. При цьому, може виконуватися перевірка зовнішніх параметрів роботи програми: завантаження процесора, використання пам’яті, час відповіді та т.д. – тобто, її продуктивність.

Динамічне тестування є частиною процесу валідації програмного забезпечення.

Окрім того динамічне тестування може включати різні підвиди, кожен з яких залежить від:

  • доступу до коду (тестування методом чорного, білого та сірого ящика);
  • рівня тестування (модульне, інтеграційне, системне та прийомочне тестування);
  • сфери використання програми (функціональне, навантажувальне, тестування безпеки та ін.).