Agile Testing – embedding testing into agile software development lifecycle
Training - Agile Testing
-
Upload
sudipta-lahiri -
Category
Technology
-
view
131 -
download
2
description
Transcript of Training - Agile Testing
![Page 1: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/1.jpg)
10/04/2023
1
AGILE TESTING
Sudipta Lahiri
![Page 2: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/2.jpg)
10/04/2023
2
Agile Testing
Agile testing is a software testing practice that follows the principles of agile software development (wikipedia)
Involves all members of a cross-functional agile team, with special expertise contributed by testers, to ensure delivering the business value desired by the customer at frequent intervals, working at a sustainable pace
![Page 3: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/3.jpg)
10/04/2023
3
The role of Agile Testing
Agile teams do need testers People with strong testing skills They might need QA in a different
form/shape! Your function is to support the business
by helping them understand the business and acceptance criteria Understand risks!
![Page 4: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/4.jpg)
10/04/2023
4 The 9 principles...
![Page 5: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/5.jpg)
10/04/2023
5
Testing moves the project forward...
![Page 6: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/6.jpg)
10/04/2023
6
Testing is not a phase
![Page 7: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/7.jpg)
10/04/2023
7
Everybody tests! Everyone Tests
On traditional projects, independent testers are responsible for all test activities.
In Agile, getting the testing done is the responsibility of the whole team. Yes, testers execute tests. Developers do too.
The need to get all testing done in an iteration may mean that the team simply cannot do as much in each sprint as they originally thought. If yes, then Agile has made visible the impedance
mismatch between test and dev that already existed. The team was not going as fast as they thought. They
appeared to be going quickly because the developers were going fast. But if the testing isn't done, then the features aren't done, and the team just does not have the velocity they think.
Goldratt's TOC says that the whole team can only go as fast as the slowest part. To go faster, the team has to widen the throughput of
the slowest part of the process. Eliminate the bottleneck; everyone tests.
![Page 8: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/8.jpg)
10/04/2023
8
Reduce feedback latency
![Page 9: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/9.jpg)
10/04/2023
9
Case Study:Test Planning for one release – in 2011
IR Activities Dev BuildPlanned Start
Planned End Team
Cal Days
Total PDs
Resources Rate items
Pre Release 17-01-11 08-02-11Defect Validation - Merges ~ all 6.2 HF1 -6.2HF6 = 150 defects QA -Aryaans 3 12 4 15/day/person
Test Case Development QA 10 60 6~1000 TCs
CHR CFT QA ,QA Aryaans 2 8 4IR1 16-02-11 17-02-11 01-03-11
Regression Testing ~Tier3 (1000 testcases)-need to skip incase of bandwidth issue QA -Aryaans 3 10.5 3.5 100 tc/day/personTest Case Development QA6.3 CHR Testing [Estimated Cases ~ 1000] QA 5 25 5 100TC/day/person 1000Merge Defect Validation all 6.2 HF1 -6.2HF5 defects QA 2 6 3 15 defects /day /person
IR2 01-03-11 02-03-11 08-03-11Regression Testing ~6000 testcases (Tier1,Tier2 and Tier3 ;these are non automated cases of the modules related to the defects tagged for 6.3 on dhruva) 5 65 13 7000Defect Validation - Defect Validation - QA Initiator Closure ~ 50 + - CHR Defects ~100 QA - Aryaans + 1 QA 1 4 4 15/day/person 200
IR3 10-03-11 11-03-11 16-03-11Defect Validation - Merges ~75 QA Aryaans 0.5 1.5 3Regression Testing(Unexecuted) ~ 100 testcases QA Aryaans 0.5 1.75 3.5 50/day/personInitiator Closure Defect Validation (CHR + Regression ) ~75 QA Aryaans 1.5 4.5 3
IR4 18-03-11 21-03-11 23-03-11Only rejected defects and automation run critical fixes QA Aryaans 1 1 1
Acceptance Scenario and Unautomated sanity Testing QA Aryaans 1 2 2Release Packaging QA 2 2 1
TOTAL 203 pds
4 QA Aryaans - 5 cal days -(2000 testcases)10 Resources - 80 tc/day/person to fill in the
bandwidth for execution of 4000 testcases for 5 cal days
So, 60mm of DCUT needed 20-25mm (10mm for testing + 10 developers for supporting all defects from testing) over a period of 6-8 weeks to make a release!This also, meant a requirements had to be frozen 5-6 months before release date.
We still had
regression leaks!
![Page 10: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/10.jpg)
10/04/2023
10
Execution Today
Team is delivering continuously...Changes to scope can be taken anytime and delivered in 3-4 weeksTesting is part of the Development processEveryone tests! Development automates UTC; Testing automates ST
![Page 11: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/11.jpg)
10/04/2023
11
Tests Represent Expectations
![Page 12: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/12.jpg)
10/04/2023
12
Fix bugs asap... keep the code clean
![Page 13: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/13.jpg)
10/04/2023
13
Reduce test documentation overhead
Lightweight Documentation: Instead of writing verbose, comprehensive test documentation, Agile testers: Use reusable checklists to suggest tests Focus on the essence of the test rather than the
incidental details Use lightweight documentation styles/tools Capturing test ideas in charters for Exploratory Testing Leverage documents for multiple purpose
Leverage One Test Artifact for Manual and Automated Tests Today, we invest in extensive, heavyweight step-by-
step manual test scripts in Word or a test management tool
Instead, capture expectations in a format supported by automated test frameworks like FIT/Fitnesse. The test could be executed manually More importantly that same test artifact becomes an
automated test when the programmers write a fixture to connect the test to the software under test.
![Page 14: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/14.jpg)
10/04/2023
14
Tested is part of “DONE”
![Page 15: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/15.jpg)
10/04/2023
15
Test Driven (not Testing Last)
![Page 16: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/16.jpg)
10/04/2023
16 4 key practices
![Page 17: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/17.jpg)
10/04/2023
17
Automated Unit/Integration tests
![Page 18: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/18.jpg)
10/04/2023
18
Test Driven Development
![Page 19: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/19.jpg)
10/04/2023
19
Automated System-Level Regression Tests
![Page 20: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/20.jpg)
10/04/2023
20
Acceptance Test Driven Development
![Page 21: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/21.jpg)
10/04/2023
21
In summary...
![Page 22: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/22.jpg)
10/04/2023
The testing pyramid...
UI(5%)Services
(15%)Unit Tests(80%)
UI
Services
Unit Tests
22
Ideal State In most environments
Manual
COST
ROI
![Page 23: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/23.jpg)
10/04/2023
23
But let us understand this in more detail
![Page 24: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/24.jpg)
10/04/2023
24
Impact of Agile Requirements Agile testing must be iterative Agile testers cannot rely on having
complete specifications Agile testers must be flexible
The techniques exist to make this possible...
![Page 25: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/25.jpg)
10/04/2023
25
Testing in the Agile world...
![Page 26: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/26.jpg)
10/04/2023
26
Let us discuss these test cycle more... Development Team Testing:
Agile teams will take a whole team approach Testers are embedded in the development team, working side by side
to build the system Focus of their testing efforts are often on confirmatory testing Developer regression testing or better Test-Driven Development (TDD).
Parallel independent testing. Continuous independent testing parallel to construction iterations
throughout the lifecycle. Goal: find defects that got past the development team
Perform higher forms of testing such as system integration testing, security testing, usability testing
Need significant testing skills, complex tools, and often complex pre-production testing environments
10-15:1 ratio between people on the 2 teams In larger organizations, one team can support several development
teams
Release Testing Additional testing at the end of the lifecycle
![Page 27: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/27.jpg)
10/04/2023
27
TestAutomation
![Page 28: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/28.jpg)
10/04/2023
28
Where can you apply automation?
![Page 29: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/29.jpg)
10/04/2023
29
TDD
Test-First-Development
Developer TDD Technical doc - JIT Seen more with pair
programming “Test Immediately”
after approach What happens when
we extend this to the next level...
![Page 30: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/30.jpg)
10/04/2023
30
ATDD
TDD at the requirement level Acceptance TC is a
expectation of the customer
Write a single acceptance test; make code changes to pass it
Requirement spec (JIT) If you do ATDD, you don’t
need to TDD necessarily Also, called BDD or user-
story driven development
![Page 31: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/31.jpg)
10/04/2023
31
Some industry trends...
![Page 32: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/32.jpg)
10/04/2023
32
Some industry trends...
![Page 33: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/33.jpg)
10/04/2023
33
Implications for Test Practioners Become generalizing specialists Be flexible. Be prepared to work closely with
developers. Once again, be flexible. Focus on value-added activities and again... Be flexible
![Page 34: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/34.jpg)
10/04/2023
34
Finally... Why Agile Testing works?
![Page 35: Training - Agile Testing](https://reader035.fdocuments.in/reader035/viewer/2022062417/54c0e9714a79596b718b4596/html5/thumbnails/35.jpg)
10/04/2023
35
References
http://www.ambysoft.com/essays/agileTesting.html
http://testobsessed.com/wp-content/uploads/2011/04/AgileTestingOverview.pdf