Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Behat-trick: как мы внедряли BDD на наших проектах

1,465 views

Published on

Доклад Владислава Романенко на конференции SQA Days-18, 27-28 ноября 2015 г., Москва
www.sqadays.com

Published in: Education
  • Be the first to comment

Behat-trick: как мы внедряли BDD на наших проектах

  1. 1. Software quality assurance days 18 Международная конференция по вопросам качества ПО sqadays.com Москва. 27–28 ноября 2015 Владислав Романенко Intellectsoft. Минск, Беларусь Behat-trick: как мы внедряли BDD на наших проектах
  2. 2. Behat-trick: как мы внедряли BDD на наших проектах QA-инженер в Intellectsoft В тестировании 2 года, до этого работал инженером географических информационных систем (ГИС) Занимаюсь тестированием мобильных и веб приложений v.romanenko_ laechoppe@gmail.com
  3. 3. Behat-trick: как мы внедряли BDD на наших проектах Behavior Driven Development Коротко о BDD Коротко о BDD
  4. 4. Behat-trick: как мы внедряли BDD на наших проектах Проблема единого понимания
  5. 5. Behat-trick: как мы внедряли BDD на наших проектах +Gherkin
  6. 6. Behat-trick: как мы внедряли BDD на наших проектах + Gherkin = Требования описаны понятным языком
  7. 7. Behat-trick: как мы внедряли BDD на наших проектах Behat - фреймворк для функциональных тестов
  8. 8. Behat-trick: как мы внедряли BDD на наших проектах Scenario: User can't add a photo Given I signed in as Mark When I upload photo to Mark's apartment Then the response code should be 403 Функциональные тесты в feature-файлах
  9. 9. Behat-trick: как мы внедряли BDD на наших проектах Тестировщик слишком поздно подключается на проект
  10. 10. Behat-trick: как мы внедряли BDD на наших проектах Тестировщики продумывают максимальное количество сценариев
  11. 11. Behat-trick: как мы внедряли BDD на наших проектах Scenario: Crew admin views the list of roles Given I signed in as admin When I observe the list of available roles Then only Crew roles are in the list Требования записываются во время обсуждения
  12. 12. Behat-trick: как мы внедряли BDD на наших проектах Различные точки зрения на пользовательские истории
  13. 13. Behat-trick: как мы внедряли BDD на наших проектах Тестировщик остается один на один со сценариями
  14. 14. Behat-trick: как мы внедряли BDD на наших проектах Тестировщик остается один на один с step definitions
  15. 15. Behat-trick: как мы внедряли BDD на наших проектах /** * @Given /^I request the list of faults$/ */ public function iRequestTheListOfFaults() { $this->iSendARequest('GET', 'faults'); } Step definition от программиста
  16. 16. Behat-trick: как мы внедряли BDD на наших проектах /** * @Given /^I request the list of issues$/ */ public function iRequestTheListOfIssues() { $this->iSendARequest('GET', 'issues'); } Step definition от тестировщика
  17. 17. Behat-trick: как мы внедряли BDD на наших проектах Заказчику скучно читать сценарии
  18. 18. Behat-trick: как мы внедряли BDD на наших проектах Заказчику скучно читать сценарии
  19. 19. Behat-trick: как мы внедряли BDD на наших проектах Feature: Auctions Background: Auction has started Given Mark sells out an antique vase for $100 And Alice and Mark negotiate Mark's price: | author | price | | Alice | $90 | Использование секции Background
  20. 20. Behat-trick: как мы внедряли BDD на наших проектах Использование подпапок и тегов
  21. 21. Behat-trick: как мы внедряли BDD на наших проектах When I open the Negotiations list Then I see $90 offer from Alice And I accept offer from Alice When I accept Alice's offer of $90 vs Использование описательного стиля в шагах
  22. 22. Behat-trick: как мы внедряли BDD на наших проектах Given I'm signed in as <user> Then I should see <count> negotiations in the list Examples: | user | count | | Mark | 2 | | Alice | 1 | | John | 0 | Использование таблиц
  23. 23. Behat-trick: как мы внедряли BDD на наших проектах Scenario: Admin can create a new Crew member Given I’m signed in as "admin" with "qwerty" password When I create a "Crew member" who has "Username" like "marin_rain" and "Name" like "Marin Rain" and "Email" like "marin_rain@test.com" and "Location" like "Berlin" Устранение побочных шагов
  24. 24. Behat-trick: как мы внедряли BDD на наших проектах Given I’m an authenticated Admin When I create "Marin Rain" who is a "Crew member" Then User is created successfully Устранение побочных шагов
  25. 25. Behat-trick: как мы внедряли BDD на наших проектах Сценарии могут быть запущены в любой момент
  26. 26. Behat-trick: как мы внедряли BDD на наших проектах Сценарии = “живая документация”
  27. 27. Behat-trick: как мы внедряли BDD на наших проектах Коммуникация Выводы общение внутри команды и с заказчиком
  28. 28. Behat-trick: как мы внедряли BDD на наших проектах Коммуникация Коммуникация Выводы обсуждение требований (сценариев) всей командой
  29. 29. Behat-trick: как мы внедряли BDD на наших проектах Коммуникация Коммуникация Коммуникация Выводы совместная работа над стилем описания сценариев
  30. 30. Behat-trick: как мы внедряли BDD на наших проектах Вопросы? v.romanenko_ laechoppe@gmail.com

×