Solit 2013, Behaviour Driven Development, Ихелис Александр
Upcoming SlideShare
Loading in...5
×
 

Solit 2013, Behaviour Driven Development, Ихелис Александр

on

  • 454 views

Александр Ихелис, Лондон, эксперт в автоматизации тестирования международного уровня ...

Александр Ихелис, Лондон, эксперт в автоматизации тестирования международного уровня

«Behaviour Driven Development». Процессы, принципы разработки, бенефиты, примеры. Лекция. Development секция. Webinar из Лондона.

Statistics

Views

Total Views
454
Views on SlideShare
436
Embed Views
18

Actions

Likes
1
Downloads
3
Comments
0

1 Embed 18

http://solit.isoligorsk.org 18

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Solit 2013, Behaviour Driven Development, Ихелис Александр Solit 2013, Behaviour Driven Development, Ихелис Александр Presentation Transcript

  • Behavior Driven Development by Aliaksandr Ikhelis, 2013 @Expedia.comSunday, 10 March 13
  • Agenda • BDD • Development workflow • Testing quadrants (types of tests) • Testing Pyramid • Stubbing in Functional Tests • Continuous IntegrationSunday, 10 March 13
  • Communication Issue They are They do not know slow!.. what they need!..Sunday, 10 March 13
  • Communication Issue They are They do not know slow!.. what they need!..Sunday, 10 March 13
  • Building communication bridgeSunday, 10 March 13
  • Building communication bridgeSunday, 10 March 13
  • Behavior Driven Development BDD is an evolution in the thinking behind TDD & ATDP Focus on delivery of the prioritized and verifiable business value by providing a common vocabularySunday, 10 March 13
  • Behavior Driven Development PracticesSunday, 10 March 13
  • Behavior Driven Development Practices • Establish goalsSunday, 10 March 13
  • Behavior Driven Development Practices • Establish goals • Draw out features using feature injectionSunday, 10 March 13
  • Behavior Driven Development Practices • Establish goals • Draw out features using feature injection • Involve stakeholders in the implementation process through outside-in software developmentSunday, 10 March 13
  • Behavior Driven Development Practices • Establish goals • Draw out features using feature injection • Involve stakeholders in the implementation process through outside-in software development • Use examples to describe behaviorSunday, 10 March 13
  • Behavior Driven Development Practices • Establish goals • Draw out features using feature injection • Involve stakeholders in the implementation process through outside-in software development • Use examples to describe behavior • Automate examples to provide quick feedback and regression testingSunday, 10 March 13
  • What BDD adds to TDDSunday, 10 March 13
  • What BDD adds to TDD • Test what an object does instead of what it isSunday, 10 March 13
  • What BDD adds to TDD • Test what an object does instead of what it is • Design top-down, which is essential for YAGNI – You Arent Gonna Need ItSunday, 10 March 13
  • What BDD adds to TDD • Test what an object does instead of what it is • Design top-down, which is essential for YAGNI – You Arent Gonna Need It • Define acceptance criteria with the customer and specify it in the automated way, serve the living specSunday, 10 March 13
  • The BDD “Outside-In” cycleSunday, 10 March 13
  • The BDD “Outside-In” cycleSunday, 10 March 13
  • Gherkin: feature title and narrative Feature: Adding movies to the queueSunday, 10 March 13
  • Gherkin: feature title and narrative Feature: Adding movies to the queueSunday, 10 March 13
  • Gherkin: feature title and narrative Feature: Adding movies to the queueSunday, 10 March 13
  • Gherkin: feature title and narrative Feature: Adding movies to the queueSunday, 10 March 13
  • Describing Features with Cucumber Cucumber is a BDD tool that reads plain text descriptions of application features with example scenarios, which can be converted into automation. The text is written in a business readable domain language, known as Gherkin.Sunday, 10 March 13
  • Cucumber step definitions © 2012 Expedia, Inc..Sunday, 10 March 13
  • Describing code with RSpec RSpec is a BDD framework, which is used to write executable examples of the expected behaviour of a small bit of code in a controlled context. Code example: Output:Sunday, 10 March 13
  • Describing code with RSpecSunday, 10 March 13
  • Example: process flowSunday, 10 March 13
  • Example: story cardSunday, 10 March 13
  • Describing code with RSpecSunday, 10 March 13
  • Benefits • Communication • Living Documentation • Traceability • Focus on behaviorSunday, 10 March 13
  • Sunday, 10 March 13
  • Testing quadrandsSunday, 10 March 13
  • Get the testing pyramid (un)fit BEFORE AFTERSunday, 10 March 13
  • Stubbing services/back-ends © 2012 Expedia, Inc..Sunday, 10 March 13
  • Stubbing services/back-ends • Spoofing the service (replicate behavior with mocked backend + store data) • Prepared canned responses • Stubbing per browser session © 2012 Expedia, Inc..Sunday, 10 March 13
  • Jenkins: trunk pipeline Stage 1 Stage 2 Stage 3 - Compile - Deploy - Stub - Package - isWorking acceptance - Unit tests - Stub - PMD (static analysis) integration © 2012 Expedia, Inc..Sunday, 10 March 13
  • Jenkins: trunk pipeline © 2012 Expedia, Inc..Sunday, 10 March 13
  • CI tips • Start small • Keep it fast – set a limit • Fail Fast • Keep it green • Everyone is responsible for Quality • Pre-checkin Ant Targets © 2012 Expedia, Inc..Sunday, 10 March 13
  • Speaking the same language = building together As an awesome team We want to build such a great product So that everyone loves it Given the investment of 22M of bricks When you place all the bricks properly Then the Solit Conference Tower is visible to all people across the GlobeSunday, 10 March 13
  • Do not forget to Have Fun!Sunday, 10 March 13
  • • alex.ikhelis@gmail.com • www.linkedin.com/in/aikhelis/Sunday, 10 March 13
  • Recommended reading by Aliaksandr Ikhelis, 2013Sunday, 10 March 13