Алексей Кабанов, Автоматизируем rich internet applications с нуля...

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

Upload: sqadays2009piter

Post on 29-Nov-2014

1.481 views

Category:

Technology


2 download

DESCRIPTION

Алексей Кабанов, EMC, Санкт-Петербург, Россия Автоматизируем Rich Internet Applications с нуля на примере Flex

TRANSCRIPT

Page 1: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

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

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

Page 2: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

2

План

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

Page 3: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

3

Rich Internet Applications

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

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

Page 4: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

4

Adobe Flex

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

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

Page 5: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

5

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

Page 6: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

6

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

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

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

Page 7: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

7

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

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

Automation API

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

Page 8: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

8

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

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

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

Page 9: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

9

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

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

Page 10: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

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

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

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

Page 11: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

11

Общая схема

Page 12: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

12

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

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

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

Page 13: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

13

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

Page 14: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

14

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

Page 15: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

15

Результаты

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

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

Стоимость ?

Page 16: Алексей Кабанов, Автоматизируем Rich Internet Applications с нуля на примере Flex

Q & A