SlideShare a Scribd company logo
BDD на Java при помощи
  Selenium UI тестов
         Май 2012
     Алексей Резчиков



                        AUTOMATED-TESTING.INFO
Обо мне
    • Java разработчик и тимлид
    с более чем 10-летним стажем

    • Евангелист автоматизированного
    тестирования уже более 4-х лет

    • Энтузиаст XP/Agile/Lean

    • Успел «понюхать порох» вместе с eBay и HP


2                                                 AUTOMATED-TESTING.INFO
План
    •   В чем польза BDD?
    •   BDD + Selenium : как это работает вместе?
    •   Практика (live coding)
    •   Альтернативы
    •   Критика подхода
    •   Выводы



3                                         AUTOMATED-TESTING.INFO
Все началось с XP




4                       AUTOMATED-TESTING.INFO
Потом придумали TDD




5                         AUTOMATED-TESTING.INFO
Суть TDD




6              AUTOMATED-TESTING.INFO
TDD это прекрасно, но…




    Кто будет думать о качестве?
7                            AUTOMATED-TESTING.INFO
Что ИМЕННО дает TDD?
    A 2005 study found that using TDD meant
    writing more tests and, in turn, programmers
    who wrote more tests tended to be more
    productive. Hypotheses relating to code
    quality and a more direct correlation between
    TDD and productivity were inconclusive.
    Wikipedia


8                                         AUTOMATED-TESTING.INFO
Что ИМЕННО дает TDD?
    Test-driven development offers more than just
    simple validation of correctness, but can also
    drive the design of a program
    Wikipedia




9                                         AUTOMATED-TESTING.INFO
Попытка исправить TDD – ATDD




10                          AUTOMATED-TESTING.INFO
Попытка исправить TDD – ATDD
     Acceptance Test Driven Development (ATDD)
     is a practice in which the whole team
     collaboratively discusses acceptance criteria,
     with examples, and then distills them into a
     set of concrete acceptance tests before
     development begins.
       http://testobsessed.com/blog/2008/12/08/acceptance-test-driven-development-
                                                                  atdd-an-overview/




11                                                                   AUTOMATED-TESTING.INFO
Попытка исправить TDD – ATDD
     Acceptance TDD helps coordinate software
     projects in a way that helps us deliver exactly
     what the customer wants when they want it,
     and that doesn’t let us implement the required
     functionality only half way.
                 http://www.methodsandtools.com/archive/archive.php?id=72




12                                                         AUTOMATED-TESTING.INFO
Что же такое BDD?
     • At the heart of BDD is a rethinking of the
       approach to unit testing and acceptance
       testing: unit test names are whole sentences
       starting with the word "should" and they are
       written in order of business value.
     • BDD encourages collaboration among
       developers, QA and non-technical or business
       participants in a software project. It has
       evolved over the last few years.
     Wikipedia

13                                           AUTOMATED-TESTING.INFO
Магия слов: GWT




14                     AUTOMATED-TESTING.INFO
BDD + Selenium
     Concordion is an open source tool for writing
     automated acceptance tests in Java*
                  * There are also versions for .NET, Python, Scala, and Ruby.




15                                                             AUTOMATED-TESTING.INFO
How it works?

      Concordion
                     WebDriver     Browser
      Test Runner


     TestNG/JUnit
                    PageObject
         test


      Concordion    TestNG/JUnit
       test spec    test methods

16                                   AUTOMATED-TESTING.INFO
Практика
     Пример тестирования сайта




17                               AUTOMATED-TESTING.INFO
Альтернативы: платформа
     Стоит быть прагматичными –
     не стоит добавлять Java в проекты где ее
     нет.




18                                      AUTOMATED-TESTING.INFO
Альтернативы: BDD фреймворк
     • Cucumber
     • JBehave
     • easyB
     …




19                          AUTOMATED-TESTING.INFO
Альтернативы: UI тесты
        не Selenium’ом единым




20                              AUTOMATED-TESTING.INFO
Критика подхода
     • BDD может быть не нужен, достаточно
       ATDD
     • часто разумней заменить UI тесты более
       низкоуровневыми




21                                      AUTOMATED-TESTING.INFO
Выводы




22            AUTOMATED-TESTING.INFO
А если серьезно
     • BDD незаменим в проектах, где
       необходима тесная связь бизнеса с
       командой разработки
     • BDD имеет свою четкую область
       применения
     • внедрение BDD это комплексный процесс
     • успешная команда работает на качество
       вместе

23                                    AUTOMATED-TESTING.INFO
Вопросы
               @twincengray



                   alex.mcgray@gmail.com



                      http://mcgray.com.ua

24                                AUTOMATED-TESTING.INFO
Ad

Recommended

Bdd with java_using_concordion_and_selenium_ui_tests
Bdd with java_using_concordion_and_selenium_ui_tests
Oleksiy Rezchykov
 
QA/Testing process в Agile start-up
QA/Testing process в Agile start-up
Nikita Filippov
 
Тестирование как панацея для жизни и развития проекта
Тестирование как панацея для жизни и развития проекта
Evgeniy Kuzmin
 
Оценка проектов тестирования
Оценка проектов тестирования
Rina Uzhevko
 
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
it-people
 
QA & Testing process в Agile Start Up
QA & Testing process в Agile Start Up
Agile Base Camp
 
Путь тестировщика: Расту или деградирую?
Путь тестировщика: Расту или деградирую?
SQALab
 
Улучшить KPI в два раза? Сделано!
Улучшить KPI в два раза? Сделано!
SQALab
 
Кадровые проблемы тестирования
Кадровые проблемы тестирования
Boris Frolov
 
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QAFest
 
KPI тестировщиков - особенности и проблемы
KPI тестировщиков - особенности и проблемы
Rina Uzhevko
 
Мобильный веб: назад в будущее
Мобильный веб: назад в будущее
Badoo Development
 
Темная сторона метрик
Темная сторона метрик
Roman Ivliev
 
Гибкое тестирование
Гибкое тестирование
Rina Uzhevko
 
Can we have some more quality - Russian version
Can we have some more quality - Russian version
Alexander Pushkarev
 
Sq adays 2010_balashenko
Sq adays 2010_balashenko
Alexei Lupan
 
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QAFest
 
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QAFest
 
Распределение тестировщиков по командам как один из этапов контроля качества
Распределение тестировщиков по командам как один из этапов контроля качества
SQALab
 
Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитика
SQALab
 
Exploratory testing
Exploratory testing
Gleb Rybalko
 
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Andrey Ladutko
 
Цели и их cвязь с KPI
Цели и их cвязь с KPI
Rina Uzhevko
 
Советы бывалого тестировщика менеджеру проектов
Советы бывалого тестировщика менеджеру проектов
SQALab
 
Тестируем развитие тестировщика
Тестируем развитие тестировщика
SQALab
 
Код-ревью в Drupal
Код-ревью в Drupal
ShvetsGroup
 
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
CEE-SEC(R)
 
Как автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ru
Badoo Development
 
Повышение качества тестов и автоматическая валидация REST API документации
Повышение качества тестов и автоматическая валидация REST API документации
CEE-SEC(R)
 
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
Provectus
 

More Related Content

What's hot (20)

Кадровые проблемы тестирования
Кадровые проблемы тестирования
Boris Frolov
 
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QAFest
 
KPI тестировщиков - особенности и проблемы
KPI тестировщиков - особенности и проблемы
Rina Uzhevko
 
Мобильный веб: назад в будущее
Мобильный веб: назад в будущее
Badoo Development
 
Темная сторона метрик
Темная сторона метрик
Roman Ivliev
 
Гибкое тестирование
Гибкое тестирование
Rina Uzhevko
 
Can we have some more quality - Russian version
Can we have some more quality - Russian version
Alexander Pushkarev
 
Sq adays 2010_balashenko
Sq adays 2010_balashenko
Alexei Lupan
 
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QAFest
 
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QAFest
 
Распределение тестировщиков по командам как один из этапов контроля качества
Распределение тестировщиков по командам как один из этапов контроля качества
SQALab
 
Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитика
SQALab
 
Exploratory testing
Exploratory testing
Gleb Rybalko
 
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Andrey Ladutko
 
Цели и их cвязь с KPI
Цели и их cвязь с KPI
Rina Uzhevko
 
Советы бывалого тестировщика менеджеру проектов
Советы бывалого тестировщика менеджеру проектов
SQALab
 
Тестируем развитие тестировщика
Тестируем развитие тестировщика
SQALab
 
Код-ревью в Drupal
Код-ревью в Drupal
ShvetsGroup
 
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
CEE-SEC(R)
 
Как автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ru
Badoo Development
 
Кадровые проблемы тестирования
Кадровые проблемы тестирования
Boris Frolov
 
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QA Fest 2017. Роман Горин. Системы тест менеджмента: обзор и краткое введение...
QAFest
 
KPI тестировщиков - особенности и проблемы
KPI тестировщиков - особенности и проблемы
Rina Uzhevko
 
Мобильный веб: назад в будущее
Мобильный веб: назад в будущее
Badoo Development
 
Темная сторона метрик
Темная сторона метрик
Roman Ivliev
 
Гибкое тестирование
Гибкое тестирование
Rina Uzhevko
 
Can we have some more quality - Russian version
Can we have some more quality - Russian version
Alexander Pushkarev
 
Sq adays 2010_balashenko
Sq adays 2010_balashenko
Alexei Lupan
 
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QA Fest 2017. Никита Галкин. Контрактное тестирование на примерах или Contrac...
QAFest
 
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QA Fest 2017. Екатерина Шепелева. О тестирование доступности: зачем, как, к ч...
QAFest
 
Распределение тестировщиков по командам как один из этапов контроля качества
Распределение тестировщиков по командам как один из этапов контроля качества
SQALab
 
Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитика
SQALab
 
Exploratory testing
Exploratory testing
Gleb Rybalko
 
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Andrey Ladutko
 
Цели и их cвязь с KPI
Цели и их cвязь с KPI
Rina Uzhevko
 
Советы бывалого тестировщика менеджеру проектов
Советы бывалого тестировщика менеджеру проектов
SQALab
 
Тестируем развитие тестировщика
Тестируем развитие тестировщика
SQALab
 
Код-ревью в Drupal
Код-ревью в Drupal
ShvetsGroup
 
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
Особенности внедрения KPI или как доказать, что Ваш «зеленый» проект реально ...
CEE-SEC(R)
 
Как автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ru
Badoo Development
 

Similar to Bdd with java using concordion and selenium ui tests (20)

Повышение качества тестов и автоматическая валидация REST API документации
Повышение качества тестов и автоматическая валидация REST API документации
CEE-SEC(R)
 
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
Provectus
 
Тестирование осень 2013 лекция 3
Тестирование осень 2013 лекция 3
Technopark
 
Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...
tabtabus
 
Рефакторинг
Рефакторинг
SmartStepGroup
 
На пути к совершенному инжинирингу
На пути к совершенному инжинирингу
Vitebsk DSC
 
AgileDays11 Resume
AgileDays11 Resume
Антон Погодин
 
SCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max Kolodezniy
Alexey Krivitsky
 
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Dakiry
 
Практика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к Kanban
Alexander Byndyu
 
Модульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NET
Alexander Byndyu
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
MoscowJS
 
Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)
Dmitry Melikov
 
Успешная карьера в современной разработки программного обеспечения
Успешная карьера в современной разработки программного обеспечения
Sergey Morgunov
 
Процесс разработки Agile & Java
Процесс разработки Agile & Java
devclub
 
Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"
Fwdays
 
Test Driven Development in .NET Applications
Test Driven Development in .NET Applications
Anton Vidishchev
 
Atlassian update moscow aug - ru
Atlassian update moscow aug - ru
Sherali Karimov
 
Aug 3-2012 - Atlassian - Об Atlassian
Aug 3-2012 - Atlassian - Об Atlassian
Teamlead
 
Роман Кокин «Организация тестирования в больших командах»
Роман Кокин «Организация тестирования в больших командах»
DataArt
 
Повышение качества тестов и автоматическая валидация REST API документации
Повышение качества тестов и автоматическая валидация REST API документации
CEE-SEC(R)
 
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
QA MeetUp - Алексей Чумагин: "Тестирование в Big Data"
Provectus
 
Тестирование осень 2013 лекция 3
Тестирование осень 2013 лекция 3
Technopark
 
Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...
tabtabus
 
Рефакторинг
Рефакторинг
SmartStepGroup
 
На пути к совершенному инжинирингу
На пути к совершенному инжинирингу
Vitebsk DSC
 
SCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max Kolodezniy
Alexey Krivitsky
 
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Dakiry
 
Практика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к Kanban
Alexander Byndyu
 
Модульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NET
Alexander Byndyu
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
MoscowJS
 
Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)
Dmitry Melikov
 
Успешная карьера в современной разработки программного обеспечения
Успешная карьера в современной разработки программного обеспечения
Sergey Morgunov
 
Процесс разработки Agile & Java
Процесс разработки Agile & Java
devclub
 
Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"
Fwdays
 
Test Driven Development in .NET Applications
Test Driven Development in .NET Applications
Anton Vidishchev
 
Atlassian update moscow aug - ru
Atlassian update moscow aug - ru
Sherali Karimov
 
Aug 3-2012 - Atlassian - Об Atlassian
Aug 3-2012 - Atlassian - Об Atlassian
Teamlead
 
Роман Кокин «Организация тестирования в больших командах»
Роман Кокин «Организация тестирования в больших командах»
DataArt
 
Ad

More from automated-testing.info (20)

Александр Кабалюк – SilkTest
Александр Кабалюк – SilkTest
automated-testing.info
 
За пределами PageObject
За пределами PageObject
automated-testing.info
 
Философия и построение тестового фреймворка на основе BDD в PHP проектах
Философия и построение тестового фреймворка на основе BDD в PHP проектах
automated-testing.info
 
Швейцарский нож для Android
Швейцарский нож для Android
automated-testing.info
 
Автоматизация тестирования как сервис
Автоматизация тестирования как сервис
automated-testing.info
 
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
automated-testing.info
 
Тестирование производительности Ajax приложений с помощью JMeter
Тестирование производительности Ajax приложений с помощью JMeter
automated-testing.info
 
Быстрое расширение Robot Framework под свои нужды с использованием Python
Быстрое расширение Robot Framework под свои нужды с использованием Python
automated-testing.info
 
“Обезьянье тестирование” в мобильных проектах
“Обезьянье тестирование” в мобильных проектах
automated-testing.info
 
Проблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestComplete
automated-testing.info
 
Совершенный тестовый фреймворк
Совершенный тестовый фреймворк
automated-testing.info
 
В поисках магической кнопки или как приручить SOAP UI
В поисках магической кнопки или как приручить SOAP UI
automated-testing.info
 
Фреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriver
automated-testing.info
 
Codeception - WTF?
Codeception - WTF?
automated-testing.info
 
Keyword driven testing
Keyword driven testing
automated-testing.info
 
Why it is not working
Why it is not working
automated-testing.info
 
Andrey Azimov - Как найти работу тестировщику?
Andrey Azimov - Как найти работу тестировщику?
automated-testing.info
 
Jenkins auto configureforbranch-php
Jenkins auto configureforbranch-php
automated-testing.info
 
Иван Бордюг - Инструмент автоматизации регрессионного тестирования на основе ...
Иван Бордюг - Инструмент автоматизации регрессионного тестирования на основе ...
automated-testing.info
 
Alexei Zozulenko - Test automation failure
Alexei Zozulenko - Test automation failure
automated-testing.info
 
Александр Кабалюк – SilkTest
Александр Кабалюк – SilkTest
automated-testing.info
 
Философия и построение тестового фреймворка на основе BDD в PHP проектах
Философия и построение тестового фреймворка на основе BDD в PHP проектах
automated-testing.info
 
Швейцарский нож для Android
Швейцарский нож для Android
automated-testing.info
 
Автоматизация тестирования как сервис
Автоматизация тестирования как сервис
automated-testing.info
 
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
Курс молодого бойца-автоматизатора – как стать ветераном и остаться в живых
automated-testing.info
 
Тестирование производительности Ajax приложений с помощью JMeter
Тестирование производительности Ajax приложений с помощью JMeter
automated-testing.info
 
Быстрое расширение Robot Framework под свои нужды с использованием Python
Быстрое расширение Robot Framework под свои нужды с использованием Python
automated-testing.info
 
“Обезьянье тестирование” в мобильных проектах
“Обезьянье тестирование” в мобильных проектах
automated-testing.info
 
Проблемы автоматизации крупных проектов: TestComplete
Проблемы автоматизации крупных проектов: TestComplete
automated-testing.info
 
Совершенный тестовый фреймворк
Совершенный тестовый фреймворк
automated-testing.info
 
В поисках магической кнопки или как приручить SOAP UI
В поисках магической кнопки или как приручить SOAP UI
automated-testing.info
 
Фреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriver
automated-testing.info
 
Andrey Azimov - Как найти работу тестировщику?
Andrey Azimov - Как найти работу тестировщику?
automated-testing.info
 
Иван Бордюг - Инструмент автоматизации регрессионного тестирования на основе ...
Иван Бордюг - Инструмент автоматизации регрессионного тестирования на основе ...
automated-testing.info
 
Alexei Zozulenko - Test automation failure
Alexei Zozulenko - Test automation failure
automated-testing.info
 
Ad

Bdd with java using concordion and selenium ui tests

  • 1. BDD на Java при помощи Selenium UI тестов Май 2012 Алексей Резчиков AUTOMATED-TESTING.INFO
  • 2. Обо мне • Java разработчик и тимлид с более чем 10-летним стажем • Евангелист автоматизированного тестирования уже более 4-х лет • Энтузиаст XP/Agile/Lean • Успел «понюхать порох» вместе с eBay и HP 2 AUTOMATED-TESTING.INFO
  • 3. План • В чем польза BDD? • BDD + Selenium : как это работает вместе? • Практика (live coding) • Альтернативы • Критика подхода • Выводы 3 AUTOMATED-TESTING.INFO
  • 4. Все началось с XP 4 AUTOMATED-TESTING.INFO
  • 5. Потом придумали TDD 5 AUTOMATED-TESTING.INFO
  • 6. Суть TDD 6 AUTOMATED-TESTING.INFO
  • 7. TDD это прекрасно, но… Кто будет думать о качестве? 7 AUTOMATED-TESTING.INFO
  • 8. Что ИМЕННО дает TDD? A 2005 study found that using TDD meant writing more tests and, in turn, programmers who wrote more tests tended to be more productive. Hypotheses relating to code quality and a more direct correlation between TDD and productivity were inconclusive. Wikipedia 8 AUTOMATED-TESTING.INFO
  • 9. Что ИМЕННО дает TDD? Test-driven development offers more than just simple validation of correctness, but can also drive the design of a program Wikipedia 9 AUTOMATED-TESTING.INFO
  • 10. Попытка исправить TDD – ATDD 10 AUTOMATED-TESTING.INFO
  • 11. Попытка исправить TDD – ATDD Acceptance Test Driven Development (ATDD) is a practice in which the whole team collaboratively discusses acceptance criteria, with examples, and then distills them into a set of concrete acceptance tests before development begins. http://testobsessed.com/blog/2008/12/08/acceptance-test-driven-development- atdd-an-overview/ 11 AUTOMATED-TESTING.INFO
  • 12. Попытка исправить TDD – ATDD Acceptance TDD helps coordinate software projects in a way that helps us deliver exactly what the customer wants when they want it, and that doesn’t let us implement the required functionality only half way. http://www.methodsandtools.com/archive/archive.php?id=72 12 AUTOMATED-TESTING.INFO
  • 13. Что же такое BDD? • At the heart of BDD is a rethinking of the approach to unit testing and acceptance testing: unit test names are whole sentences starting with the word "should" and they are written in order of business value. • BDD encourages collaboration among developers, QA and non-technical or business participants in a software project. It has evolved over the last few years. Wikipedia 13 AUTOMATED-TESTING.INFO
  • 14. Магия слов: GWT 14 AUTOMATED-TESTING.INFO
  • 15. BDD + Selenium Concordion is an open source tool for writing automated acceptance tests in Java* * There are also versions for .NET, Python, Scala, and Ruby. 15 AUTOMATED-TESTING.INFO
  • 16. How it works? Concordion WebDriver Browser Test Runner TestNG/JUnit PageObject test Concordion TestNG/JUnit test spec test methods 16 AUTOMATED-TESTING.INFO
  • 17. Практика Пример тестирования сайта 17 AUTOMATED-TESTING.INFO
  • 18. Альтернативы: платформа Стоит быть прагматичными – не стоит добавлять Java в проекты где ее нет. 18 AUTOMATED-TESTING.INFO
  • 19. Альтернативы: BDD фреймворк • Cucumber • JBehave • easyB … 19 AUTOMATED-TESTING.INFO
  • 20. Альтернативы: UI тесты не Selenium’ом единым 20 AUTOMATED-TESTING.INFO
  • 21. Критика подхода • BDD может быть не нужен, достаточно ATDD • часто разумней заменить UI тесты более низкоуровневыми 21 AUTOMATED-TESTING.INFO
  • 22. Выводы 22 AUTOMATED-TESTING.INFO
  • 23. А если серьезно • BDD незаменим в проектах, где необходима тесная связь бизнеса с командой разработки • BDD имеет свою четкую область применения • внедрение BDD это комплексный процесс • успешная команда работает на качество вместе 23 AUTOMATED-TESTING.INFO
  • 24. Вопросы @twincengray [email protected] http://mcgray.com.ua 24 AUTOMATED-TESTING.INFO