BDD на Java при помощи  Selenium UI тестов         Май 2012     Алексей Резчиков                        AUTOMATED-        ...
Обо мне    • Java разработчик и тимлид    с более чем 10-летним стажем    • Евангелист автоматизированного    тестирования...
План    •   В чем польза BDD?    •   BDD + Selenium : как это работает вместе?    •   Практика (live coding)    •   Альтер...
Все началось с XP4                       AUTOMATED-                        TESTING.INFO
Потом придумали TDD5                         AUTOMATED-                          TESTING.INFO
Суть TDD6              AUTOMATED-               TESTING.INFO
TDD это прекрасно, но…    Кто будет думать о качестве?7                            AUTOMATED-                             ...
Что ИМЕННО дает TDD?    A 2005 study found that using TDD meant    writing more tests and, in turn, programmers    who wro...
Что ИМЕННО дает TDD?    Test-driven development offers more than just    simple validation of correctness, but can also   ...
Попытка исправить TDD – ATDD10                          AUTOMATED-                            TESTING.INFO
Попытка исправить TDD – ATDD     Acceptance Test Driven Development (ATDD)     is a practice in which the whole team     c...
Попытка исправить TDD – ATDD     Acceptance TDD helps coordinate software     projects in a way that helps us deliver exac...
Что же такое BDD?     • At the heart of BDD is a rethinking of the       approach to unit testing and acceptance       tes...
Магия слов: GWT14                     AUTOMATED-                       TESTING.INFO
BDD + Selenium     Concordion is an open source tool for writing     automated acceptance tests in Java*                  ...
How it works?      Concordion                     WebDriver     Browser      Test Runner     TestNG/JUnit                 ...
Практика     Пример тестирования сайта17                               AUTOMATED-                                 TESTING....
Альтернативы: платформа     Стоит быть прагматичными –     не стоит добавлять Java в проекты где ее     нет.18            ...
Альтернативы: BDD фреймворк     • Cucumber     • JBehave     • easyB     …19                          AUTOMATED-          ...
Альтернативы: UI тесты        не Selenium’ом единым20                              AUTOMATED-                             ...
Критика подхода     • BDD может быть не нужен, достаточно       ATDD     • часто разумней заменить UI тесты более       ни...
Выводы22            AUTOMATED-              TESTING.INFO
А если серьезно     • BDD незаменим в проектах, где       необходима тесная связь бизнеса с       командой разработки     ...
Вопросы               @twincengray                   alex.mcgray@gmail.com                      http://mcgray.com.ua24    ...
Upcoming SlideShare
Loading in …5
×

Bdd with java_using_concordion_and_selenium_ui_tests

1,338 views

Published on

My automated-testing.info meet-up #16 presentation

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

  • Be the first to like this

No Downloads
Views
Total views
1,338
On SlideShare
0
From Embeds
0
Number of Embeds
399
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Почему я решил рассказать про BDD,почему я могу считать себя экспертом в этом вопросе
  • Разработчики увлеклись TDD. TDD это прекрасно, НО…Кто будет думать о качестве?ИспользованиеTDD только косвенно влияет на качество кодаИ не несет никакой прямойпользы для бизнеса
  • Где TDDпроцессе разработки
  • Быстрый цикл обратной связи
  • Как и темная сторона силы TDD обманчив, он ведь абсолютно ничего не говорит о качестве. Ну почти ничего.
  • Оставить только основное!!!http://en.wikipedia.org/wiki/Test-driven_developmentСначала мы представляем что хотим получить, а потом уже делаем. Преимущество в том, что это как раз правильный порядок действий а не «обратный» как может показаться. Самое сложное это перестроить себя.
  • Оставить только основное!!!http://en.wikipedia.org/wiki/Test-driven_development
  • http://testobsessed.com/blog/2008/12/08/acceptance-test-driven-development-atdd-an-overview/http://www.methodsandtools.com/archive/archive.php?id=72Elisabeth Hendrickson
  • Given WhenThenhttp://en.wikipedia.org/wiki/Behavior_Driven_DevelopmentМасштабATDD
  • Annotated HTML
  • Логотипы?
  • АльтернативыSelenium? Watir? Что еще ?
  • Bdd with java_using_concordion_and_selenium_ui_tests

    1. 1. BDD на Java при помощи Selenium UI тестов Май 2012 Алексей Резчиков AUTOMATED- TESTING.INFO
    2. 2. Обо мне • Java разработчик и тимлид с более чем 10-летним стажем • Евангелист автоматизированного тестирования уже более 4-х лет • Энтузиаст XP/Agile/Lean • Успел «понюхать порох» вместе с eBay и HP2 AUTOMATED- TESTING.INFO
    3. 3. План • В чем польза BDD? • BDD + Selenium : как это работает вместе? • Практика (live coding) • Альтернативы • Критика подхода • Выводы3 AUTOMATED- TESTING.INFO
    4. 4. Все началось с XP4 AUTOMATED- TESTING.INFO
    5. 5. Потом придумали TDD5 AUTOMATED- TESTING.INFO
    6. 6. Суть TDD6 AUTOMATED- TESTING.INFO
    7. 7. TDD это прекрасно, но… Кто будет думать о качестве?7 AUTOMATED- TESTING.INFO
    8. 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. Wikipedia8 AUTOMATED- TESTING.INFO
    9. 9. Что ИМЕННО дает TDD? Test-driven development offers more than just simple validation of correctness, but can also drive the design of a program Wikipedia9 AUTOMATED- TESTING.INFO
    10. 10. Попытка исправить TDD – ATDD10 AUTOMATED- TESTING.INFO
    11. 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. 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=7212 AUTOMATED- TESTING.INFO
    13. 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. Wikipedia13 AUTOMATED- TESTING.INFO
    14. 14. Магия слов: GWT14 AUTOMATED- TESTING.INFO
    15. 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. 16. How it works? Concordion WebDriver Browser Test Runner TestNG/JUnit PageObject test Concordion TestNG/JUnit test spec test methods16 AUTOMATED- TESTING.INFO
    17. 17. Практика Пример тестирования сайта17 AUTOMATED- TESTING.INFO
    18. 18. Альтернативы: платформа Стоит быть прагматичными – не стоит добавлять Java в проекты где ее нет.18 AUTOMATED- TESTING.INFO
    19. 19. Альтернативы: BDD фреймворк • Cucumber • JBehave • easyB …19 AUTOMATED- TESTING.INFO
    20. 20. Альтернативы: UI тесты не Selenium’ом единым20 AUTOMATED- TESTING.INFO
    21. 21. Критика подхода • BDD может быть не нужен, достаточно ATDD • часто разумней заменить UI тесты более низкоуровневыми21 AUTOMATED- TESTING.INFO
    22. 22. Выводы22 AUTOMATED- TESTING.INFO
    23. 23. А если серьезно • BDD незаменим в проектах, где необходима тесная связь бизнеса с командой разработки • BDD имеет свою четкую область применения • внедрение BDD это комплексный процесс • успешная команда работает на качество вместе23 AUTOMATED- TESTING.INFO
    24. 24. Вопросы @twincengray alex.mcgray@gmail.com http://mcgray.com.ua24 AUTOMATED- TESTING.INFO

    ×