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


         

это основной инструмент при создании


Компиляторы[,,] - это основной инструмент при создании программного обеспечения, поэтому их надежность особенно важна. Наряду с другими методами верификации и валидации для компиляторов, тестирование попрежнему остается важным элементом в семье этих методов. Необходимость автоматизации тестирования компиляторов также представляется очевидной, поскольку реальные объемы добротных наборов тестов и сложность анализа результатов весьма велики. Подход UniTesK [] является методологий построения надежного и качественного ПО на основе использования моделей этого ПО. UniTesK использует модельный подход в следующих целях:
  • для построения критериев правильности реализации ПО,
  • для построения критериев полноты и эффективности проверки качества ПО,
  • для построения входных тестовых данных и процедур анализа результатов целевого ПО.
В узком смысле UniTesK предлагает рассматривать модели как инструмент для построения тестов целевого ПО. При этом процесс разработки теста и собственно тестирования распадается на следующие фазы:
  1. Построение абстрактной модели или спецификации поведения целевой системы.
  2. Извлечение тестового оракула (т.е. процедуры анализа результата целевой системы) из спецификации.
  3. Разбиение пространства входных данных целевой системы на домены,
  4. Проектирование критерия тестового покрытия в терминах абстрактной модели.
  5. Интеграция сгенерированных и вручную написанных компонентов тестовой системы.
  6. Пропуск тестов, включающий
    • анализ результатов целевой системы при помощи оракулов;
    • измерение тестового покрытия в терминах модели/спецификации или в терминах реализации.
Основные достоинства этого подхода состоят в следующем:
  • Спецификации и модели обычно строятся на основе функциональных требований к системе, и часто структура спецификаций следует структуре требований, что позволяет явным образом связать требования к системе с результатами тестирования и метриками тестового покрытия.
  • Спецификации и модели, а значит и тесты, могут разрабатываться до завершения реализации целевой системы, что сокращает общее время разработки ПО.
  • Спецификации и модели обычно компактнее и проще реализации, что упрощает ре-юз и сопровождение как самих моделей, так и тестов, которые строятся на их основе.
  • Достижение исчерпывающего покрытия в соответствии с критериями, определенными на спецификациях и моделях, как правило, обеспечивает уровень покрытия реализации, сравнимый с уровнем, достигаемым при традиционном тестировании, но за счет существенно меньших трудозатрат.
Подход UniTesK прошел апробацию в проектах, свзяаннных с тестированием как действующего, так и вновь создаваемого ПО [,,].

Содержание  Назад  Вперед