Выпущена новая версия 2.1 инструмента JavaTESK
22 октября 2007 года выпущена новая версия 2.1 инструмента разработки тестов JavaTESK, поддерживающего технологию UniTESK для платформы Java. В этой версии реализована новая важная функция — поддержка тестирования асинхронно взаимодействующих и работающих параллельно компонентов.

Метод тестирования асинхронных взаимодействий, разработанный в рамках UniTESK, опирается на следующие составляющие.

  • Помимо обычных операций в интерфейсе тестируемого компонента выделяются асинхронные события, которые компонент может создавать.
  • Требования к поведению компонента, создающего определенное событие, формулируются в виде предусловия и постусловия этого события.
    Предусловие события определяет ситуации, в которых оно может произойти. Если предусловие нарушено, данное событие не должно возникать в корректно работающей системе.
    Постусловие события описывает ожидаемое изменение состояния компонента после наступления этого события.
  • Тесты разбиваются на отдельные шаги тестирования. В ходе каждого шага может быть вызвано несколько операций и может наступить ряд событий. В конце шага тест ожидает некоторое время, чтобы произошли все значимые асинхронные события, вызванные действиями в рамках данного шага. Поэтому в конце каждого шага тестируемая система оказывается в состоянии, в котором не может произойти новых событий, если не оказывать на нее воздействий извне.
  • Оценка правильности работы тестируемой системы на каждом шаге производится на основе семантики чередования. Это значит, что инструмент тестирования пытается выстроить все произошедшие на данном шаге события и вызовы операций в цепочку так, чтобы все их пред- и постусловия выполнялись. Если такую цепочку невозможно построить, тестирование прекращается и выдается сообщение об ошибке.
  • Тест в целом строится как обход упрощенной автоматной модели поведения тестируемой системы, содержащей лишь информацию, необходимую для построения очередного шага тестирования и обеспечения нужной полноты тестирования. Тест считается отработавшим без ошибок, если каждый его шаг выполняется без ошибок.
  • По результатам работы теста создаются отчеты о достигнутом тестовом покрытии и об ошибках, если они были обнаружены.

Инструмент JavaTESK 2.1 можно скачать на странице Пробное использование.

 
Copyright © 2014 Институт системного программирования Российской академии наук