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