В состав системы CTESK входят инструменты, необходимые для создания тестов, их выполнения и анализа результатов тестирования. Возможно использование этих инструментов в среде разработки Microsoft Visual Studio 6.0 или из командной строки.
Для написания тестов в технологии CTESK используется SeC - спецификационное расширение языка C. Это позволяет писать тесты быстрее и компактнее, так как конструкции SeC "скрывают'' достаточно сложные рутинные задачи, необходимые для тестирования. Язык SeC является надмножеством языка C и сохраняет его мощь и гибкость.
Программа, написанная на языке SeC, должна быть оттранслирована в C, для последующей компиляции в исполняемый код. Компиляция C-кода может быть выполнена при помощи стандартных инструментов разработки, а трансляция из SeC в C выполняется инструментом CTESK - SeC-транслятором.
Транслятор анализирует программу, написанную на языке SeC, и генерирует код стандартного C.
В процессе свей работы тестовая программа выполняет трассировку различных событий, таких, как вызов тестового оракула, выполнение некоторого элемента покрытия, несоответствие реализации и спецификации. Генератор отчетов CTESK собирает информацию обо всех этих событиях и формирует отчет о выполнении теста.
Отчет о выполнении теста представляет собой html-документ, содержащий следующую информацию:
- Название теста, время начала и окончания его работы;
- Функции, которые тестировались этим тестом;
- Соответствие или несоответствие спецификации и реализации;
- Дополнительная информация об ошибке, облегчающая ее поиск (если она есть);
- Покрытие тестируемых функций, выполненное этим тестом.
Инструменты CTESK 2.1 предназначены для работы на любой платформе, поддерживающей JRE (Java Runtime Environment) версии 1.4 (можно загрузить с сайта java.sun.com) и ANSI C89, С99–совместимый компилятор.
Работа инструментов проверялась на следующих конфигурациях:
- Операционные системы Windows 98/Me/2000/XP с компиляторами
- Microsoft Visual C 6.0 Service Pack 3
- gcc 3.3 (под Cygwin 1.5.7)
- Операционные системы RedHat GNU Linux 7.3, 9.0, Debian GNU Linux 3.0 с компилятором gcc 3.0 или выше.
|