Frameworks презентация

Содержание

Слайд 1Frameworks
Игорь Хрол


Слайд 2План
Проблемы автоматизации
Что такое фреймворк?
Как он решает проблемы?
Некоторые практики с фреймворка на

Selenium RC

Слайд 3Проблемы автоматизации
В конце цикла разработки – много зависимостей


Изменения UI
Изменение бизнес-логики и

тест-кейсов

BA


DEV


QA

Auto QA



Слайд 4Что такое Framework?
Каркас, структура, сфера деятельности
В информационных системах структура программной системы;

программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта.
Спасибо, Википедия

Слайд 5Зачем нужен Framework?
Ре-использование кода
Решение проблем одним изменением
Уменьшение количества изобретателей «велосипедов»


Слайд 6Layering
Подход к построению архитектуры системы


Слайд 7UI Layer
Цель: контролировать изменения UI
Примеры:
Хранилище локаторов
Object Repository в QTP
Name Mapping в

TestComplete
UI-Element в Selenium IDE

Слайд 8Business components layer
Цель: контролировать изменения бизнес-логики
Примеры:
Reusable Actions в QTP
Functions в TestComplete

или любом другом инструменте

Слайд 9Utilities
Цель: вспомогательная
Примеры:
Логгирование
Работа с базой данных
Чтение настроек и тестовых данных


Слайд 10Типичная схема

AUT / SUT
Utilities layer
UI layer
Business layer
Test scripts










Слайд 11KISS
Используйте готовые решения
Усложняйте архитектуру тогда, когда это нужно
Старайтесь делать всё проще

и очевидно





Слайд 12Best Practices


Слайд 13Запуск тестов из командной строки
Ant (http://ant.apache.org/)
Запуск selenium server
Компиляция исходных кодов
Запуск тестов
Остановка

selenium server




Слайд 14Как хранить общий доступ к selenium?
Передавать каждой функции
Инициализировать изначально и использовать

статическое поле для обращения к нему

Слайд 15Базовый класс для всех тест кейсов


Слайд 16Структура тест-кейса
Preconditions
Test case
Cleanup


Слайд 17Где хранить настройки?
Найдите грань между настройками и тестовыми данными:
Selenium host
Selenium port
Timeout
Base

URL
properties-файлы – стандарт для Java (http://download.oracle.com/javase/1.4.2/docs/api/java/util/Properties.html)
config.xml – для C#



Слайд 18Где хранить тестовые данные?
Excel
CSV-файлы
База данных
XML




Слайд 19Excel-хранилища данных
Табличные данные на каждом sheet
Key-value пары в столбец
Именованные диапазоны
Чем читать

excel?
JDBC (http://www.ehow.com/how_4810548_use-jdbc-connect-ms-excel.html)
POI (http://poi.apache.org/)

Слайд 20Где хранить локаторы?
Поля классов


Слайд 21Где хранить локаторы?
Поля интерфейсов


Слайд 22Где хранить локаторы?
properties-файлы






http://seleniumhq.org/docs/06_test_design_considerations.html#ui-mapping


Слайд 23Структура UI Layer
Разбивка на страницы
Сбор «особенных» UI элементов в отдельные классы:
Различные

кастомизированные кнопки-поля (нужно вызывать специальные события)
Upload-download файлов
Иерархия объектов (GWT, например)

Слайд 24Структура Business Layer
Набор статических методов, объединённых по классам





Чем проще, тем лучше


Слайд 25Tracebility с ручным тестированием
Соотнесение тест-кейсов
Соотнесение тестовых шагов
Интеграция с существующей отчётностью
HP Quality

Center
TestLink
JIRA

Слайд 26Отчёты
HTML
Группировка по test suite и test case
Screenshots
Максимально user friendly
При возможности –

интеграция с существующей системой отчётности

Слайд 27Screenshots
void captureScreenshot (String filename);
Обычно делается во время ошибки
Try-catch в BaseTest
Listener в JUnit
http://www.cloudtesting.com/blog/2009/06/24/capturing-screen-shots-of-browsers-with-selenium-and-cloud-testing-part-1/


Слайд 28Вопросы?


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика