Проблемы автоматизируемости тестирования и их решения Круглый стол Илья Фомин Align Technology, Inc.

Презентация:



Advertisements
Похожие презентации
Урок повторения по теме: «Сила». Задание 1 Задание 2.
Advertisements

Школьная форма Презентация для родительского собрания.
Ребусы Свириденковой Лизы Ученицы 6 класса «А». 10.
Michael Jackson
Типовые расчёты Растворы
1. Определить последовательность проезда перекрестка
Масштаб 1 : 5000 Приложение 1 к решению Совета депутатов города Новосибирска от _____________ ______.
Масштаб 1 : 5000 Приложение 1 к решению Совета депутатов города Новосибирска от _____________ ______.
1 Знаток математики Тренажер Таблица умножения 2 класс Школа 21 века ®м®м.
Масштаб 1 : 5000 Приложение 1 к решению Совета депутатов города Новосибирска от
Ф. Т. Алескеров, Л. Г. Егорова НИУ ВШЭ VI Московская международная конференция по исследованию операций (ORM2010) Москва, октября 2010 Так ли уж.
Разработал: Учитель химии, биологии высшей квалификационной категории Баженов Алексей Анатольевич.
Напряжения и деформации в сварных швах ТЕМА УРОКА 1.
(урок математики). Назовите числа, которые делятся на 3: (3, 6, 9, 12, 15, 18, 21, 24, 27, 30) Назовите числа, которые делятся на 4: (4, 8,12, 16, 20,
Двоичная система счисления АЛФАВИТ: 1, 10, 11, 100, 101, 110, 111, 1 000, 1 001, 1010, , 1 100, 1 101, 1 110, 1 111, ,

1 Знаток математики Тренажер Таблица умножения 3 класс Школа России Масько Любовь Георгиевна Муниципальное общеобразовательное учреждение средняя общеобразовательная.
Вторник, 17 декабря 2013 г. 1Cедьмой урок. вторник, 17 декабря 2013 г. 2.


Транксрипт:

Проблемы автоматизируемости тестирования и их решения Круглый стол Илья Фомин Align Technology, Inc

О докладчике Илья Фомин – Руководитель группы Align Technology, Inc. Profile…………………

Постановка проблемы 3

4

5 Автоматизируемость: Тесткейз, или Вид тестирования, или Операция с системой Выполняется вручную или планируется Нужно заменить на скрипт/программу

Постановка проблемы 6 Типичный тест кейз: Установка начальных условий конфигурация системы, подготовка данных Выполнение необходимых действий Осуществление проверок Постобработка сбор статистики, очистка и т.д. Можно автоматизировать один, несколько, или все пункты

Постановка проблемы 7 Что можно автоматизировать? Последовательность действий/проверок На доступном вам приложении Формализованную Выполнимую Если все условия выше выполнены, но автоматизировать не получается, то у вас... проблема

Технические методы решения 8

RTFM! (Manual) RTFF! (Forums) RTFG! (Google) 9

Технические методы решения Использование другого тула Обзоры:

Технические методы решения Вызов операций нижнего уровня Найти onClick() и вызвать Распарсить код страницы Сформировать POST, отправить, проанализировать ответ 11

Технические методы решения Инъекции кода -В клиент -В БД 12

Технические методы решения Инъекции кода – пример: pageObj.object.parentWindow.execScript( _ "var httpReq;" &_ "httpReq = new XMLHttpRequest();" &_ "httpReq.open(""GET"", """ & url & """, false);" &_ "httpReq.setRequestHeader(""Cache-Control"", ""no-cache"");" &_ "httpReq.send(null);" &_ "window.receivedResponse = httpReq.responseText;" ) responseXmlText = pageObj.object.parentWindow.receivedResponse 13

Технические методы решения Замена действий синонимами -Горячие клавиши -Hardware replay -Буфер обмена -OCR 14

Технические методы решения Замена действий - пример.Type micDwn &_ micDwn &_ micReturn Clipboard: Set objHTML = CreateObject("InternetExplorer.Application") objHTML.Document.ParentWindow.ClipboardData 15

Технические методы решения Проблемы технических методов? -Нужно самостоятельно гарантировать эквивалентность ручному тестированию. Обычно гарантом выступает репутация вендора -Чаще всего сложно и долго -Не переносимо между технологиями 16

Административные методы решения 17

Административные методы решения Компромисс -Комбинация с ручными проверками -Точки остановки и синхронизации -Скриншоты -Подробные и удобно читаемые отчеты -Описание проверок прямо в отчетах скриптов -Downstream проверки интеграционных точек -Data Driven Testing 18

Административные методы решения Просите помощи у разработчиков (или Agile в действии :) 19

Административные методы решения Просите помощи у разработчиков -Написание сложных алгоритмов -Имплементация необходимых интерфейсов -Любые правки, повышающие тестабилити 20

Административные методы решения Просите помощи у разработчиков: Backdoor-интерфейсы 21

Административные методы решения Просите помощи у разработчиков: Backdoor-интерфейсы 22

Административные методы решения Просите помощи у разработчиков заранее Прототип каждой программы, использующей новую технологию, обязателен к изучению 23

Административные методы решения 100%ная автоматизация 24 70% 30%

Административные методы решения 100%ная автоматизация Существует? 25 70% 30% 20% 80%

Административные методы решения 100%ная автоматизация Существует? 26 70% 30% %

Административные методы решения 100%ная автоматизация Существует! Нужно только правильно выбрать 100% 27 70% 30% 100%

Административные методы решения - Что нужно автоматизировать? - А нужно ли автоматизировать именно это? Если автоматизировать трудно: Переформулируйте задачу так, чтобы добиться автоматизируемости... или даже Сформулируйте задачу так, чтобы она уже была автоматизирована! 28

Административные методы решения Нужно ли вообще выполнять данный вид тестирования? Насколько проблемная область? Если не было ни одного бага, нужно ли тестировать? Рассмотрите другие подходы: Анализ исходного кода и ресурсов Модульные тесты Отслеживание зависимостей, тестирование только измененного функционала Идеи в аудитории? 29

Что нужно автоматизировать 30

Что нужно автоматизировать Profit от автоматизации: Экономия ресурсов Ускорение выполнения Увеличение скорости реакции Выполнение в нерабочее время Действия (практически) невозможно провести вручную Устранение скучной работы 31

Что нужно автоматизировать Loss от автоматизации: Покупка тулов Обучение Разработка/доработка инфраструктуры Написание скриптов Поддержка скриптов и пользователей Запуски, анализ отчетов 32

Что нужно автоматизировать 33

Выход из тупика. Разбор полетов. 34 Или рассказ об обновлении FTPC

Выход из тупика. Разбор полетов. DataSweep Shop Advantage 6.1 -> Rockwell Factory Talk Production Centre

Выход из тупика. Разбор полетов. Появившиеся проблемы (QTP 10) 36

Выход из тупика. Разбор полетов. Появившиеся проблемы (QTP 10) 37

Выход из тупика. Разбор полетов. Появившиеся проблемы (QTP 10) JavaList has no parents. Messed hierarchy Objects are identified as disabled, though they are not JavaButton "OK" is identified as JavaList И другие схожие проблемы......проявляющиеся в 1-5% случаев Лечится переоткрытием окна/таба, иногда – ручным кликом по заголовку 38

Выход из тупика. Разбор полетов. Что известно: -Обновленная версия Java (1.5) -Минимальные изменения кода -Обновленная версия сервера приложений (WebSpere) -Скрипты LoadRunner перестали работать 39

Выход из тупика. Разбор полетов. Предпринятые шаги (workarounds): -Переопределение.Exist (включили.Activate) -Перенос части интерфейсных проверок в БД -Упрощение дозапуска скриптов -Упрощенный и автоматизированный запуск регрессии 40

Выход из тупика. Разбор полетов. Предпринятые шаги (конфигурация): -Написание простого теста, воспроизводящего проблему (Logon/Logoff) -Чистая последняя инсталляция QTP 10 -Инсталляция QTP 11 -Разные версии Java Попробовали TestComplete (работает, но иногда вылетает) 41

Выход из тупика. Разбор полетов. Предпринятые шаги (с разработчиками): -Запуск клиента FTPC через апплет и jnlp -Несколько версий FTPC (8.0, 8.1, 8.2, 9.0) -Вызов сборщика мусора (GC) через.Object -Общение с поддержкой Rockwell -Поиск потенциальных проблем в коде 42

Выход из тупика. Разбор полетов. Новая информация: -JRE скачивается FTPC самостоятельно, установленная версия не имеет значения -Скрипты LoadRunner сломались из-за использования объектов IBM JM -IBM JM скачивается клиентом вместе с Sun -FTPC 8.1, установленный на WebSphere требует IBM JM, а 6.1 – нет -FTPC 8.x на Jboss/WebLogic не требует IBM 43

Выход из тупика. Разбор полетов. Пробуем Jboss …………. 44

Выход из тупика. Разбор полетов. Решение: На каждый тестовый стенд установлен дополнительный сервер FTPC/Jboss Запущен проект по полному переходу на Jboss Jboss еще и стоит существенно дешевле WebSphere 45

End Function 46

О докладчике Илья Фомин – Руководитель группы Align Technology, Inc. Profile………………… Интересная работа в Москве!!!