(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Тестирование графических интерфейсов с помощью SilkTest Bitmap Tool

Олег Большаков

В предыдущей статье Автоматизация тестирования с помощью Borland SilkTest мы рассмотрели принцип автоматизированного регрессионного тестирования с помощью программного продукта Borland SilkTest. Кстати, теперь Borland перешел под крыло Micro Focus, так что правильнее называть этот продукт - Microfocus SilkTest. Есть и еще очень интересные изменения - например, покупка Micro Focus"ом всей линейки продуктов тестирования от компании Compuware, но об этом будет отдельная статья!

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

С таким подходом мы можем тестировать подавляющее большинство приложений, однако есть определенные категории программ, для которых данный метод не подходит. Это - графические редакторы, программы для работы с фотографиями, визуальные построители и прочие программы для работы с графикой и изображениями. Допустим, мы тестируем функцию обработки изображения. Последовательность действий тестировщика при проверке функционала примерно следующая: запустить приложение, загрузить графический файл, выбрать область для преобразования, нажать на панеле инструментов кнопку для выполнения преобразования и после этого просмотреть результирующее изображение. Каким же образом автоматизировать выполнение данного теста? Сам собой напрашивается ответ, что нужно сравнить полученное изображение с заранее подготовленным правильным (эталонным) изображением. Соответственно, программное обеспечение для тестирования должно уметь выполнять сравнение двух или более изображений и выводить некоторую статистику по сравнению. В поставке SilkTest для этого предназначена утилита SilkTest Bitmap Tool, возможности которой мы сейчас рассмотрим.

Итак, утилита Bitmap Tool - это приложение, поставляемое в составе SilkTest. Утилита Bitmap Tool позволяет тестировать приложения посредством сравнения изображений и выявления различий между ними. Основное назначение - это тестирование графических приложений, однако с не меньшим успехом ее можно использовать для графических элементов обычных приложений. Для примера, можно проверить, корректно ли отображаются шрифты, или проверить, не изменилась ли пиктограмма на кнопке на панели инструментов. Утилиту Bitmap Tool можно использовать как самостоятельно, так и воспользовавшись встроенными в SilkTest функциями для ее использования. Например, из кода можно вызывать функцию, которая зафиксирует изображение текущего окна, элемента управления или всего экрана и сравнит с заранее определенным изображением (эталонным).

К интересным возможностям Bitmap Tool можно отнести следующие:

  • Графическое выделение различающихся областей эталонной и тестовой картинок
  • Масштабирование различающихся областей
  • Возможности навигации по различающимся областям (переход к следующей, к предыдущей)
  • Статистика различий (количество пикселей, различия в цветах, в размерах, процентное представление метрик)
  • Редактирование изображений простейшими графическими операциями, печать и сохранение в другие форматы.

Работа с утилитой из тестового скрипта очень проста, так как язык 4Test содержит весь необходимый набор для работы с изображениями. Например, следующий пример сравнивает внешний вид приложения TestApp с эталонным изображением:

TestApp.VerifyBitmap ("c:\sample\testbase.bmp")

Следующий пример - это сравнение эталонной картинки и изображения компонента Foo:

Verify (SYS_GetBitmapCRC ("base.bmp"), Foo.GetBitmapCRC ())

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

Таким образом, можно подвести итог: SilkTest Bitmap Tool является прекрасным дополнением к стандартному инструментарию SilkTest"а и позволяет автоматизировать тестирование в самых нестандартных случаях - например, при обработке изображений или при использовании экзотических пользовательских интерфейсов.

 

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 01.10.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
GFI WebMonitor Plus Edition - подписка на 1 год
SAP Crystal Server 2011 WIN INTL 5 CAL License
Quest Software. SQL Navigator Professional Edition
Panda Gold Protection - ESD версия - на 1 устройство - (лицензия на 1 год)
SAP Crystal Reports 2008 INTL WIN NUL License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
СУБД Oracle "с нуля"
Новые материалы
Один день системного администратора
Программирование на Visual Basic/Visual Studio и ASP/ASP.NET
Мастерская программиста
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100