TEST: Making sure the applicaVon does the RIGHT things RIGHT -‐ Uncle Bob
2 words: rapid feedback Short feedback loop between testers and developers Find criVcal bugs early rather than late Testers are service providers, not last line of defense Involve customers early in wriVng tests Focus on automaVon What is agile testing?
h-p://www.infoq.com/cn/news/2011/03/Ensuring-‐Product-‐Quality-‐Google h-p://googletesVng.blogspot.com/2011/01/how-‐google-‐tests-‐soiware.html Break the old view The whole-‐team approach No “throwing code over the wall” to QA！ One project team, one aim Together analyze requirements Planning draw up acceptance criteria Team Logistics
is a method by which individual units of source code are tested to determine if they are ﬁt for use. A unit is the smallest testable part of an applicaVon. In procedural programming a unit may be an individual funcVon or procedure. In object-‐oriented programming a unit is usually an interface, such as a class.[citaVon needed] Unit tests are created by programmers or occasionally by white box testers during the development process. It’s for DEV
Unit Test each test case Is Unit Test Independent from the others: substitutes like method stubs, mock objects, fakes and test harnesses can be used toSafety control assist testing a module in isolation.
UT as second users Force code loose coupling Beautiful Architeture
Feature: Change email Scenario: Change my email Given I am signed in And I click on my name in the header And I follow "seungs" Then I should be on my account seungs page When I ﬁll in "user_email" with "email@example.com" And I press "Change E-‐Mail" Then I should see "E-‐Mail Changed" And I follow the "conﬁrm_email" link from the last sent email Then I should see "acVvated" And my "email" should be "firstname.lastname@example.org" Behaviour Driven Development
Use the whold-‐team approach Adopt an agile tesVng mind-‐set Automate regression tesVng Provide and obtain feedback Build a foundaVon of core pracVces -‐ CI / Test Environment / Technical Debt -‐ Working Incrementally Collaborate with customers Looking at the big picture Success Factors