advertisement

Тестирование весна 2014 смешанное занятие 1

50 %
50 %
advertisement
Information about Тестирование весна 2014 смешанное занятие 1
Education

Published on March 10, 2014

Author: Technopark

Source: slideshare.net

advertisement

Автоматизация функционального тестирования Влад Алюков

Кто? Занимаюсь тестированием 10 лет Из них 6 лет автоматизацией тестирования и тестовой инфраструктурой 2

О чём? Подходы Инструменты Проблемы 3

4 Зачем?

Зачем? §  Широкий взгляд на вопрос качества §  Понимание методов его обеспечения §  Решение задач подобающим способом §  Умение поставлять качественные артефакты своего труда 5

Автоматизация тестирования §  Ускорение обратной связи §  Документация на фичи 6

Скорость разработки 7

Тесты – документация на ваш код 8

Функциональное тестирование 9

Функциональное тестирование §  Контроль конечной функциональности на: §  пригодность §  соответствие требованиям/спецификациям §  точность (accuracy testing) §  защищённость (security testing) 10

11 Автоматизация функционального тестирования

Автоматизированные функциональные тесты 12

Автоматизированные функциональные тесты §  Взаимодействуют с GUI или внешним API §  Тестируют возможности вашего приложения/ сервиса 13

Каждому уровню свои тесты 14

Когда применять функциональные авто-тесты? §  Конечные возможности продукта §  Высокая степень интеграции 15

Testing pyramid 16

Предпосылки для автоматизации 17

Предпосылки для автоматизации §  Монотонные действия §  Стабильные интерфейсы §  Высокая частота изменений §  Критичность фичи 18

Подходы к автоматизации §  Один кейс – один тест §  Исключение сайд-эффектов (герметичность) 19

Герметичность 20

Обеспечение герметичности §  Виртуализация §  Заглушки §  Тестовые состояния приложения 21

Варианты интерфейсов §  GUI (Web-интерфейсы/Десктоп) §  API (RESTful/SOAP) 22

Инструменты автоматизации тестирования 23

Выбор инструментов §  Тест должен находиться в максимальной близости к тестируемой возможности §  Нельзя автоматизировать что-либо, не написав ни одной строчки кода 24

Тестирование Web-Приложений §  WebDriver §  Jasmine/jstestdriver §  phantomjs 25

WebDriver §  История §  Возможности §  Применимость 26

История 27

Возможности 28

29 Как и для чего следует применять WebDriver

Браузерозависимые сценарии §  Drag’n’Drop - загрузка файлов §  Клавиатурные действия §  Кроссбраузерное тестирование §  Тестирование с браузерными расширениями 30

Тестовые фрэймворки §  TestNG/Junit/py.test/nose/rspec 31

Структура теста §  Подготовка данных/Открытие контекста §  Выполнение тестов в контексте §  Закрытие контекста 32

Пример теста 33

Как WebDriver взаимодействует с браузером/приложением §  Селекторы css/xpath §  «честный» click 34

Виды селекторов §  CSS §  Встроенная поддержка во всех современных браузерах §  Высокая скорость работы §  XPATH §  Оси §  Поиск по тексту элемента 35

Проблемы §  Нестабильность интерфейсов §  Вариативность окружения (много, много браузеров!) §  Низкая скорость работы интерфейсов 36

Паттерны проектирования GUI тестов 37

PageObject 38

DRY 39

фу! плохой тест! 40

PageObject 41

PageObject 42

хороший, образцовый, годный тест! 43

44 Антипаттерны использования webdriver

Нагрузочное тестирование 45

Нагрузочное тестирование 46

Тестирование бизнес - логики 47

Запись/воспроизведение 48

Запись/воспроизведение 49

Запись/воспроизведение 50 §  Нельзя автоматизировать что-либо, не написав ни одной строчки кода §  Selenium IDE

Практики написания тестов §  Keyword based testing §  BDD 51

BDD example 52

BDD/PageObject example 53

Keyword Driven Test example 54

Применимость BDD/KDT §  Документация на возможности §  Кейсы составленные по практике BDD может понять средней руки гуманитарий. 55

Отчётность 56

xUnit где применяется §  Ваша IDE §  Сервер непрерывной интеграции 57

Антипаттерны в тестировании 58

Антипаттерны в тестировании §  god tests §  Гейзенбаг §  Неуправляемое окружение 59

60 Как тестируем мы

Технологии §  ЯП: java/python/ruby §  FW: testng/py.tests/rspec §  CI: jenkins §  IaaS: OpenStack/chef §  build tool: maven/distutils/rake §  reporting: graphite/xunit/text reports 61

Браузерные тесты §  фрэймворк: maven/testng/guice/webdriver/ browsermob proxy/800loc §  тесты: 17kloc ~700 тестов 62

Функциональный мониторинг 63

Домашнее задание §  Написать тесты на проект Поиск@Mail.Ru §  Тесты должны работать в 2х браузерах firefox/ chrome §  Отчёт должен генерироваться в формате xUnit report §  Тесты в браузерах должны исполняться параллельно. 64

Домашнее задание §  Подмес «Календарь» ( q= календарь) §  Подмес «Конвертор валют» ( q= курс доллара) §  Подмес «Восход-Закат» ( q= закат ) §  Все подмесы геозависимые §  У меня не должно возникнуть проблем с запуском ваших тестов =) 65

Практика §  Java 1.7/Maven 3/IDE (я использую intellij idea) §  Интернет! 66

Вопросы 67

Спасибо за внимание Влад Алюков v.alyukov@corp.mail.ru

Add a comment

Related presentations

Related pages

Стажировка 2014, занятие 6-1. Web ...

Стажировка 2014, занятие 6-1. Web приложения 7bits. ... Тестирование. Занятие 1. Тест-кейсы.
Read more

Осень 2013 - Весна 2014 - YouTube

Published on Nov 1, 2014. ... 1 занятие курсов духовно ... "MIU MIU" Full Show Autumn Winter 2013 2014 Paris by ...
Read more

Тестирование весна 2014 лекция 1 ...

Share Тестирование весна 2014 лекция 1. ... Frontend весна 2014 лекция 3 1. 1 DOM, Events 2.
Read more

Проектирование интерфейсов ...

Share Проектирование интерфейсов весна 2014 занятие 7. ... тестирование ... весна 2014 лекция 7 1.
Read more

"Весна пришла" занятие 1 мл. группе

"Весна пришла" занятие 1 мл. ... Опубликовано 02.05.2014 ... Занятие в 1 мл.группе "Наш любимый ...
Read more

Тестирование программного ...

... • Проектирование • Программирование • Документирование • Тестирование.
Read more

Весна 2014. Набор в группы

Весна 2014. Набор в ... по телефону 8-926-502-11-11 или 8-926-502-1-502. Тестирование, а также первое ...
Read more

ОС план занятий II курс весна 2014

Материалы Студенту ОС план занятий ii курс весна 2014. ... Занятие №1 ... тестирование и ...
Read more