Your SlideShare is downloading. ×
0
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Automation from the trenches
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Automation from the trenches

766

Published on

Glib Rybalko, GlobalLogic’s Test Lead, consultant and trainer was among 26 known Ukrainian and international experts who took a word on IT Weekend Ukraine 2013. Glib discussed features of automated …

Glib Rybalko, GlobalLogic’s Test Lead, consultant and trainer was among 26 known Ukrainian and international experts who took a word on IT Weekend Ukraine 2013. Glib discussed features of automated software testing, benefits and feasibility of using this approach on various projects. During his speech, Glib pointed all necessary steps of automated testing implementation and gave homework for those who were interested in this field and wanted to implement it in their projects.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
766
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. AUTOMATION FROM THE TRENCHES BY GLEB RYBALKO
  • 2. СоОрганизатор конференций Stratoplan World. Kharkov Edition QA Conf 1.0: Management& Process QA Conf 1.1: Automation&Tools СоВедущий подкаста «Тестирование: Backstage» www.QAConsulting.ru
  • 3. О ЧЕМ ПОГОВОРИМ: 1.Цели, Инструменты, Процесс 2.Архитектура 3.Паттерны проектирования 4.Continuous Integration 5.Логирование результатов 6.Здравый смысл
  • 4. ЗАЧЕМ ВАМ НУЖНА АВТОМАТИЗАЦИЯ
  • 5. ЗАЧЕМ ВАМ НУЖНА АВТОМАТИЗАЦИЯ 1. Это модноесть в GoogleFacebookMicrosoft…? 2. Босс сказал, что нужна ? 3. Прочитал о автоматизации в интернетеуслышал доклад и решил попробовать ?
  • 6. ЗАЧЕМ ВАМ НУЖНА АВТОМАТИЗАЦИЯ
  • 7. ЗАЧЕМ ВАМ НУЖНА АВТОМАТИЗАЦИЯ 1. Тестов стало очень много. Не успеваем делать регрессию 2. Нет уверенности в том, что сборки ПО приходят пригодные для тестирования 3. Клиент продолжает добавлять тестовые конфигурации, не успеваем проходить тесты на всех. 4. Нужно протестировать нагрузку на приложение 5. Нужно провести тестирование надежности
  • 8. ДОМАШНЕЕ ЗАДАНИЕ Напишите 3-5 причин почему автоматизация будет полезна или бесполезна на вашем проекте
  • 9. КАКИХ ЦЕЛЕЙ ОНА ПОМОЖЕТ ДОСТИГНУТЬ
  • 10. КАКИХ ЦЕЛЕЙ ОНА ПОМОЖЕТ ДОСТИГНУТЬ 1. Ускоренное прохождение тестов 2. Увеличение надежности и стабильности сборок ПО для тестирования 3. Быстрая обратная связь о качестве ПО для программистов и клиента 4. Уменьшение рутинной работы 5. Возможность проведения тестирования, которое нельзя провести в ручную
  • 11. ДОМАШНЕЕ ЗАДАНИЕ Напишите 3-5 целей, которых поможет вам достичь автоматизация
  • 12. ЧТО ВЫ БУДЕТЕ АВТОМАТИЗИРОВАТЬ
  • 13. ЧТО ВЫ БУДЕТЕ АВТОМАТИЗИРОВАТЬ 1. Smoke тесты 2. Happy path 3. Стандартные use cases 4. Регрессионное тестирование 5. Тесты производительности
  • 14. КТО БУДЕТ АВТОМАТИЗИРОВАТЬ Software Developer Software Developer in Testing Manual tester Automation tester
  • 15. КАКИЕ ИНСТРУМЕНТЫ ВЫ СОБИРАЕТЕСЬ ИСПОЛЬЗОВАТЬ
  • 16. КАКИЕ ИНСТРУМЕНТЫ ВЫ СОБИРАЕТЕСЬ ИСПОЛЬЗОВАТЬ • Когда мы задумываемся об инструментах мы думаем о: • Собственном фреймворке • Коммерческом фреймворке • Бесплатный инструмент автоматизации (WebDriver, xUnit, JMeter etc.) • Коммерческий инструмент автоматизации(Test Complete, QTP, Load Runner etc)
  • 17. ДОМАШНЕЕ ЗАДАНИЕ 1. Определите области вашего приложения, с которых вы начнете автоматизацию 2. Выпишите несколько инструментов автоматизации, которыми вы будете пользоваться
  • 18. АРХИТЕКТУРА Продумайте архитектуру тестов перед автоматизацией • Визуализируйте связи между частями в приложении • Разделите архитектуру тестов на уровни • Best practices • Посоветуйтесь с разработчиками
  • 19. АРХИТЕКТУРА Уровень представления данных (Presentation layer) Бизнес логика (Business layer) Уровень доступа к данным (Data Access layer) • Используйте различные уровни абстракции
  • 20. ДОМАШНЕЕ ЗАДАНИЕ 1. Визуализируйте компоненты вашего приложения и связи между ними 2. Подумайте над тем какие уровни абстракции нужны вам, для написания автотестов
  • 21. ШАБЛОНЫ ПРОЕКТИРОВАНИЯ • GRASP (General Responsibility Assignment Software Patterns) • GoF (Gang of Four) • Patterns of Enterprise Application Architecture
  • 22. GANG OF FOUR • Erich Gamma, • Richard Helm, • Ralph Johnson, • John Vlissides • Design Patterns: Elements of Reusable Object-Oriented Software
  • 23. GOF PATTERNS Порождающие шаблоны проектирования позволяют сделать систему независимой от способа создания, композиции и представления объектов • Abstract Factory — Абстрактная фабрика • Builder — Строитель • Factory Method — Фабричный метод • Prototype — Прототип • Singleton — Одиночка
  • 24. GOF PATTERNS Структурные шаблоны проектирования в которых рассматривается вопрос о том, как из классов и объектов образуются более крупные структуры • Adapter — Адаптер • Bridge — Мост • Composite — Компоновщик • Decorator — Декоратор • Facade — Фасад • Flyweight — Приспособленец • Proxy — Заместитель
  • 25. GOF PATTERNS Поведенческие шаблоны проектирования определяющие алгоритмы и способы реализации взаимодействия различных объектов и классов • Chain of responsibility — Цепочка обязанностей • Command — Команда • Interpreter — Интерпретатор • Iterator — Итератор • Mediator — Посредник • Memento — Хранитель • Observer — Наблюдатель • …
  • 26. ДЛЯ ТЕСТИРОВЩИКОВ • Page Object • Page Factory • Facades • Decorators
  • 27. ПРИМЕРЫ: PAGE OBJECT http://code.google.com/p/selenium/wiki/PageFactory public class LoginPage { public HomePage loginAs(String username, String password) { // ... clever magic happens here } public LoginPage loginAsExpectingError(String username, String password) { // ... failed login here, maybe because one or both of the username and password are wrong } public String getErrorMessage() { // So we can verify that the correct error is shown } }
  • 28. СОВЕТЫ • Тестировщик должен знать что такое Design Patterns • Используйте шаблоны при автоматизации • Думайте о будущем вашего framework
  • 29. ДОМАШНЕЕ ЗАДАНИЕ 1. Выпишите какие шаблоны проектирования используются у вас 2. Подумайте какие шаблоны вы еще могли бы использовать
  • 30. ВРЕМЯ ДЛЯ CI
  • 31. ОБЯЗАННОСТИ CI • получение исходного кода из репозитория; • сборка проекта; • выполнение тестов; • развѐртывание готового проекта; • отправка отчетов
  • 32. CI ИНСТРУМЕНТЫ • Jenkins (free) http://jenkins-ci.org/ • Hudson (free) http://hudson-ci.org/ • TeamCity (free up to 3 users) http://www.jetbrains.com/teamcity/ • Cruise Control (free) http://cruisecontrol.sourceforge.net/
  • 33. СОВЕТЫ • Начните CI как можно раньше. • Начинайте с простого, не стоит сразу автоматизировать все сборки
  • 34. 2 LOG OR NOT 2 LOG
  • 35. 2 LOG OR NOT 2 LOG Если логгирования нет, вам стоит о нем задуматьсяего создать
  • 36. 2 LOG OR NOT 2 LOG Разделите логгирование на несколько уровней • Для клиента • Для тестировщиков • Для разработчиков
  • 37. 2 LOG OR NOT 2 LOG Настройка логгирования должна происходить через конфигурационные файлы, а не через код
  • 38. ПРИМЕР • Канонический логгер • Log4J, Log4Net… • Собственный логгер
  • 39. ДОМАШНЕЕ ЗАДАНИЕ 1. Узнайте используется ли у вас CI и если да, то стоит добавить туда базовые автотесты
  • 40. ЗДРАВЫЙ СМЫСЛ Автоматизация тестирования не отменяет ручного тестирования
  • 41. ЗДРАВЫЙ СМЫСЛ Не гонитесь за количеством тестов, гонитесь за качеством и покрытием
  • 42. ЗДРАВЫЙ СМЫСЛ Выделяйте время на то чтобы поднять голову и осмотреться. Иногда из-за деревьев не видно леса
  • 43. ССЫЛКИ • http://code.google.com/p/selenium/wiki • http://ru.wikipedia.org/wiki/Design_Patterns • http://selenium2.ru/ • http://www.log4j.ru/
  • 44. ВОПРОСЫ? Email: glebrybalko@gmail.com Twitter: GRybalko

×