Тестирование софта - статьи

ce076b8f

Введение в UniTesK


Данный раздел содержит очень поверхностное введение в UniTesK. Более подробное описание можно найти в

С 1994 года в ИСП РАН активно разрабатываются методы и инструменты тестирования программного обеспечения на основе формальных методов.

В 1994-1999 годах по контрактам с Nortel Networks в ИСП РАН был разработан и активно использовался метод тестирования KVEST. KVEST отличался от обычных методов тестирования индустриального программного обеспечения тем, что в KVEST использовались формальные спецификации в форме пред- и постусловий для построения тестовых оракулов, а также модель конечных автоматов для построения тестовых воздействий.

Применение KVEST показало, что формальные методы можно с большим успехом применять при тестировании индустриального программного обеспечения.

Опыт применения KVEST показал, что использование академических языков формальных спецификаций и специальных языков описания тестов препятствует встраиванию инструментов, основанных на этих языках, в процесс разработки ПО. Чем ближе язык спецификаций к языку, на котором ведется разработка, тем проще разработчикам писать спецификации и тесты .

UniTesK разрабатывался на основе опыта, полученного при разработке и применении KVEST. Рассмотрим основные особенности UniTesK:

  • Разделение построения тестовых воздействий и проверки правильности поведения целевой системы. Тестовые воздействия строятся в тестовых сценариях, а проверка правильности поведения целевой системы в тестовых оракулах.
  • Автоматизированное построение тестовых воздействий
  • Представление функциональных требований к целевой системе в виде формальных спецификаций
  • Для записи формальных спецификаций используется язык, “близкий” к языку, на котором разработана целевая система
  • Автоматическая генерация тестовых оракулов из спецификаций
  • Оракулы и реализация связаны посредством тонкой прослойки медиаторов.
  • Язык описания тестовых воздействий “близок” к языку, на котором разработана целевая система
  • Автоматически генерируются критерии качества покрытия требований
  • Автоматически производится оценка качества покрытия требований при прогоне тестов


Содержание раздела