Алексей Кабанов

16
Автоматизированное тестирование RIA с нуля на примере Flex Алексей Кабанов. EMC

Upload: sqalab

Post on 25-Jun-2015

787 views

Category:

Documents


0 download

DESCRIPTION

Автоматизированное тестирование RIA с нуля на примере Flex

TRANSCRIPT

Page 1: Алексей Кабанов

Автоматизированное тестирование RIA с нуля на примере Flex

Алексей Кабанов. EMC

Page 2: Алексей Кабанов

2

План

• RIA & Flex• Тестирование Flex• Выбор инструментов• Обзор разработанной системы• Подключение к ночному тестированию• Оценка результатов

Page 3: Алексей Кабанов

3

Rich Internet Applications

Технологии: • AJAX • Adobe Flex • MS Silverlight • JavaFX

Rich Internet Applications (RIA) – веб-приложения, обладающие характеристиками настольных приложений и запускаемые пользователем в браузере или на виртуальной машине.

Page 4: Алексей Кабанов

4

Adobe Flex

Примеры: • Buzzword (www.buzzword.com)• FlauntR (www.flauntr.com)• Toufee (www.toufee.com)

Flex – это родственная Flash технология, основанная на описании интерфейса приложения с помощью языка MXML.

Page 5: Алексей Кабанов

5

Пример Flex-приложения

Page 6: Алексей Кабанов

6

Тестирование Flex

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

Как поступить, когда существующие инструменты не удовлетворяют требованиям тестирования?

Page 7: Алексей Кабанов

7

Автоматизация тестирования Flex

• Сравнение скриншотов• Использование MSAA• Через адаптер, основанный на Flex

Automation API

Три основных способа автоматизации тестирования Flex-приложений:

Page 8: Алексей Кабанов

8

Безопасность Flex

• Flex не позволяет работать с элементами в другом домене, если это не разрешено в crossdomain.xml файле на удаленном хосте.

• Flex-приложение не может получить доступ к файловой системе, если это не разрешено в Adobe Flash Security Manager’е.

Page 9: Алексей Кабанов

9

Выбор инструментов

Встроенная поддержка Flex-приложений:• QuickTestProfessional 9.2• SilkTest• TestComplete 5• Selenium• RubyFx• ...

Page 10: Алексей Кабанов

10Требования к тестированию

• Сложное модульное приложение• Обилие расширенных компонентов• Тестирование на нескольких ОС и браузерах• Возможность включения тестов в систему

ночного тестирования, написанную на Perl

Page 11: Алексей Кабанов

11

Общая схема

Page 12: Алексей Кабанов

12

Специфика системы

• Кросс-платформенность• Планирование запуска тестовых циклов• Поддержка множества клиентов• Логин с использованием корпоративной

учетной записи• Возможность ночного прогона тестов

Page 13: Алексей Кабанов

13

Создание чекпоинта

Page 14: Алексей Кабанов

14

Генерация движения мыши

Page 15: Алексей Кабанов

15

Результаты

Разработка и внедрение ~ 2 ч/мес

Автоматизировано тестов 180

Стоимость ?

Page 16: Алексей Кабанов

Q & A