Автоматизация тестирования ПО на редких платформах

Post on 22-Jun-2015

540 views 0 download

description

Доклад Дмитрия Химиона, SQA Days-13, 26-27 апреля 2013, www.sqadays.com

Transcript of Автоматизация тестирования ПО на редких платформах

Автоматизация тестирования ПО на редких платформах

Дмитрий Химион. Performance Lab

Приветствие

• Дмитрий Химион – руководитель направления автоматизации тестирования;

• Занимаюсь автоматизацией тестирования банковских систем;

• Разработкой не стандартной автоматизации тестирования.

План доклада

• Обозначение и раскрытие проблемы автоматизации

• Поиск решений проблемы• Выбор решения и его описание• Обоснование почему выбрано

данное решение• Проблемы, возникшие при

реализации данного решения

Редкая система

• Примеры систем с устаревшей, редкой платформой или сильно измененной платформой

Ограничения инструментов

• Факторы определяющие проблему

• Как мы пришли к проблеме автоматизации тестирования ПО на неподдерживаемой или редкой платформе

Поиск решения не стандартной задачи

• Внутренние разработки, старые системы отвечающие требованиям бизнеса, поддерживаемые и разрабатываемые более 8-12 лет

Появляется потребность автоматизации

• Есть потребность и отсутствует прямое решение;

• Способы решения – текст и графика.

Интерфейс консольного приложения

• Что такое интерфейс консольного приложения• Анализ псевдографики

Подход от сущности платформы

• Анализ псевдографики – Text Based Pattern

Рассмотрение примера на основе псевдографики

• Анализ псевдографики – Text Based Pattern

Разбор интерфейса – know how• RegExp, способы идентификации объектов;• Проблематика однозначного выбора объекта.

Графический подход• Конвертация псевдографики для работы с картинками,

концепция.

Концепция графического подхода

• Рассматриваем конвертов и интеграцию с инструментом

• Работа с картинкой, путь от генерации до обработки, надо сделать слайды с картинками

Runtime

Files

Сравнение подходов, «оголение» сути решений.

• Сравнение подходов;• Переход к разработке – доверяй но проверяй.

Критерии сравнения Text ГрафикаРазработка решения для работы с консольным приложением «-» «-»\«+»Необходимость разработки Framework, модулей конфигурирования, логирования и т.п. «-» «+»Разработка обработчиков действий пользователя и отслеживания событий. «-» «-»\«+»Возможность разработки оптимального решения для конкретного проекта «+» «-»Сложность интеграции с инструментами автоматизации «+» «-»\«+»Логирование и формирование отчётов о проведении тестирования «+» «-»\«+»

Отпуск в начале проекта

• Поучительный отпуск ведущего автоматизатора

Планируйте, делайте и контролируйте

• По возвращению на работу

Технический экскурс в разработку

• Рассмотрение паттернов, элементов архитектуры и структуры самой разработки

Важнейшие элементы Framework

• Взаимодействие с интерфейсом - setters;• Считывание значений из интерфейса - getters;• Выбор из перечня одинаковых элементов - choosers;• Ожидание пользователем ответа от системы - handlers.

Базовая структура Framework• Структура в привязке к выбранному паттерну;• Аргументация разработанной структуры.

Trunk

Source

TestData

Test Data Gen

DB Connect

Framework

Console Client

Core

Modules

Commons

Common Code

Test Utils

Test Projects

Project 1

Project X

Runner

Красивое, легко поддерживаемое, масштабируемое и развивающееся решение

Вечная, нерушимая автоматизация?!

Возможные проблемы и их предупреждение

• Использовать шаблоны проектирования;

• Однозначность определения объектов;

• Отказоустойчивое решение для подключения к консоли;

• Простой в использовании и гибкий функционал разработки скриптов;

Подведение итогов

• Разработка нескольких решение проблемы;• Выбор и разработка оптимального для нас;• Поддерживаемая и развиваемая автоматизация.

Ход разработки и как обстоят дела

• Описание полученного в решения, примеры – где можно использовать подобное решение

Вопросы и ответы

Контакты: Skype: Picasso-Key Email: d.khimion@pflb.ru