Алексей Кабанов
DESCRIPTION
Автоматизированное тестирование RIA с нуля на примере FlexTRANSCRIPT
Автоматизированное тестирование RIA с нуля на примере Flex
Алексей Кабанов. EMC
2
План
• RIA & Flex• Тестирование Flex• Выбор инструментов• Обзор разработанной системы• Подключение к ночному тестированию• Оценка результатов
3
Rich Internet Applications
Технологии: • AJAX • Adobe Flex • MS Silverlight • JavaFX
Rich Internet Applications (RIA) – веб-приложения, обладающие характеристиками настольных приложений и запускаемые пользователем в браузере или на виртуальной машине.
4
Adobe Flex
Примеры: • Buzzword (www.buzzword.com)• FlauntR (www.flauntr.com)• Toufee (www.toufee.com)
Flex – это родственная Flash технология, основанная на описании интерфейса приложения с помощью языка MXML.
5
Пример Flex-приложения
6
Тестирование Flex
Flex-приложения работают на многих ОС и браузерах, поэтому требуется огромное количество ресурсов для их тестирования на всех возможных конфигурациях.
Как поступить, когда существующие инструменты не удовлетворяют требованиям тестирования?
7
Автоматизация тестирования Flex
• Сравнение скриншотов• Использование MSAA• Через адаптер, основанный на Flex
Automation API
Три основных способа автоматизации тестирования Flex-приложений:
8
Безопасность Flex
• Flex не позволяет работать с элементами в другом домене, если это не разрешено в crossdomain.xml файле на удаленном хосте.
• Flex-приложение не может получить доступ к файловой системе, если это не разрешено в Adobe Flash Security Manager’е.
9
Выбор инструментов
Встроенная поддержка Flex-приложений:• QuickTestProfessional 9.2• SilkTest• TestComplete 5• Selenium• RubyFx• ...
10Требования к тестированию
• Сложное модульное приложение• Обилие расширенных компонентов• Тестирование на нескольких ОС и браузерах• Возможность включения тестов в систему
ночного тестирования, написанную на Perl
11
Общая схема
12
Специфика системы
• Кросс-платформенность• Планирование запуска тестовых циклов• Поддержка множества клиентов• Логин с использованием корпоративной
учетной записи• Возможность ночного прогона тестов
13
Создание чекпоинта
14
Генерация движения мыши
15
Результаты
Разработка и внедрение ~ 2 ч/мес
Автоматизировано тестов 180
Стоимость ?
Q & A