Средства тестирования приложений для разработчиков


Глава 1 Purfy - часть 2


То есть программа отыскивает ошибки не только внутренние но и внешние, разумеется, нельзя исправить ошибку в системной DLL, но если она там есть, то наверняка, можно написать дополнительный код в своей процедуре, отказавшись от вызова "некачественной" функции из DLL.

Перво-наперво идет детальное инструментирование всех модулей. Инструментирование сводится к тому, что Purify вставляет свою отладочную информацию в тело программы и вызываемых библиотек (технология Object Code Insertion). Для эффективной работы все "пройденные" библиотеки хранятся в кеше, что позволяет сократить необходимое время не перезапуск исправленного приложения.

Давайте рассмотрим возможности Purify в плане совместной работы с Microsoft Visual C++.

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

Рисунок 1 показывает примерный вид инструментальных панелей в Visual Studio, появляющихся после инсталляции Purify, Quantify, PureCoverage. (вставить сюда из файла INTEGRATION.tif)

А учитывая давнюю дружбу Rational и Microsoft, становится понятно, почему поддерживаются в полной мере только среды разработчиков от MS.

Собрав воедино всю перечисленную информацию, давайте попробуем на конкретном примере в Visual C++, создать приложение, внести в него ряд намеренных ошибок после чего, используя Purify попытаться отыскать их.

Опустим за скобки то, каким образом создаются проекты в Visual Studio и из чего они состоят - это не самоцель. Исходим из того, что читатель уже работал с данной средой, или хотя бы знаком с ней - это - во-первых.

Во-вторых, для чистоты эксперимента мы воспользуемся стандартным "Волшебником" из состава Visual Studio, сгенерировав, на его основе проект, в который внесем некоторый код, который будет неадекватно себя вести с памятью системы:

Итак, у меня получилось 32-разрядное приложение для Windows с именем "PROJECTOID".


Начало  Назад  Вперед



Книжный магазин