Testing in Agile
-
Upload
alexander-ermakovich -
Category
Documents
-
view
31 -
download
2
Transcript of Testing in Agile
![Page 1: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/1.jpg)
Setting test process in AgileSetting test process in Agile
Alex Yermakovich
![Page 2: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/2.jpg)
Part 1: understanding the game
![Page 3: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/3.jpg)
Which are Agile benefits?Which are Agile benefits?
Flexibility/Iterative Speed to Market Encourages Change Release software early and often Builds in quality throughout the development process
![Page 4: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/4.jpg)
What’s Agile for testing?What’s Agile for testing?
Minimal Requirements Minimal Up front Planning Continuous Integration and Regression Testing Each
Iteration Test Automation
![Page 5: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/5.jpg)
Part 2: approach
![Page 6: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/6.jpg)
What is actually Agile?What is actually Agile?
Agile is number of practices!
![Page 7: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/7.jpg)
Agile testing practicesAgile testing practices
Continuous Integration- nightly builds Test Driven Development - test first and Unit tests
coverage Refactoring Coding Standards - code reviews …
![Page 8: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/8.jpg)
Rules for the game: baselineRules for the game: baseline
Every one is responsible for the quality Product/project manager is quality oriented: understand
quality requirements Quality is based on Vision rather then on requirements High level communications and integration of SQE and Dev
team: SQE code and Dev test
![Page 9: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/9.jpg)
Rules for the game: planningRules for the game: planning
SQE is independent and plans for itself but taking priorities from PM and Dev team
Engineers plans iterations on their own and responsible for it
Statistics gets gathered and analyzed Plan with priorities 8 hours working day
![Page 10: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/10.jpg)
Part 3: process
![Page 11: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/11.jpg)
Process descriptionProcess description
Development only
Testing features from iteration 1
Test matrix
Dev & bug fixingStart Finish
Iteration 1 Iteration 2 Iteration 3 Hardening
Sanity Sanity Sanity
Testing features from iteration 2 and regression
Testing features from iteration 3 and full regression
Dev & bug fixing Testing & bug fixing
Test matrix update
Test matrix update
Sanity
![Page 12: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/12.jpg)
Process description: iterationsProcess description: iterations
Quality iteration follows after development iteration. Build must pass Sanity test and then is tested during the
iteration. Rebuilding is allowed only for fixing Sanity bugs, crashes and blocks.
If Sanity test failed new build must be created. Build is delivered by dev team on Kick Off day and Sanity
tested on the first day of iteration. It’s recommenced to create automation Sanity test
![Page 13: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/13.jpg)
Process description: hardeningProcess description: hardening
Only two activities: testing and bugfixing SQE lead is responsible for everything Dev team tests when there is no bugfixing Builds are delivered daily, until all bugs are fixed. In the end final build is packed by dev lead and tested by
SQE lead.
![Page 14: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/14.jpg)
Docs for the processDocs for the process
Testing approach
Start Finish
Iteration 1 Iteration 2 Iteration 3 Hardening
Sanity Sanity Final Sanity
Test matrix update
Final Test matrix with estimations and priorities update
Sanity
Initial Test matrix
1 month
Final features listNew features list
New features list
![Page 15: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/15.jpg)
Quality expectation: iterationQuality expectation: iteration
Defects with severity of Crash or Block must be fixed in the iteration they are found.
Defects with the severity of Major found in iteration must be fixed in the following iteration
Verification of fixed/resolved issues will occur in the following iteration.
![Page 16: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/16.jpg)
Quality expectation: hardeningQuality expectation: hardening
Final Quality Debt negotiation between the Product Manager will occur no later than one week before Hardening prior to the RTM Date.
All features must be tested during hardening. Deepness will depend on resources.
Quality Debt at the beginning of the Hardening Phase will include no more than Minor defects and defects with the severity of Major found in the last iteration
No more than 5 minor defect must be before build is released
![Page 17: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/17.jpg)
Part 4: More practices
![Page 18: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/18.jpg)
Unit tests and nightly buildsUnit tests and nightly builds
No unit tests no quality No ninthly builds no quality Email notification for builds Unit test coverage is controlled by SQE: usually it’s
recommended 75-80%
![Page 19: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/19.jpg)
RefactoringRefactoring
It’s ongoing activity Helps to improve code and resolve potential issues You must have good enough unit test coverage!!!
![Page 20: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/20.jpg)
Quality in flight: monitoring debtQuality in flight: monitoring debt
Finish
Iteration 1 Iteration 2 Iteration 3 Hardening
1 month
45 70
10
0Start
Defect Severity Weight
Feature 0
Minor 2
Major 5
Crash 10
Block 25
![Page 21: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/21.jpg)
Gather priorities for hardeningGather priorities for hardening
11111
Attribute contracts
4.253455
Users scenarious
11111
Check no passwords in logs
AverageConfidence in QualityComplexityDefect History
ImpactChange
impactFeature
11111
Attribute contracts
4.253455
Users scenarious
11111
Check no passwords in logs
AverageConfidence in QualityComplexityDefect History
ImpactChange
impactFeature
0.691.751Attribute contracts
3.004.754.25Users scenarious
0.5011Check no passwords in logs
AverageSQE leadDev leadFeature
0.691.751Attribute contracts
3.004.754.25Users scenarious
0.5011Check no passwords in logs
AverageSQE leadDev leadFeatureGather priorities from the team
Crate summary and use it in test matrix
![Page 22: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/22.jpg)
Test MatrixTest Matrix
Priorities set in the Matrix and features tested by them It is good to monitor time which is spent on testing Essential to put who when or on which build Bugs statistic helps better understand potential problems
![Page 23: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/23.jpg)
Session based testingSession based testing
Create charter: task for 1-1.5 hour Give it to developer, manager, customer Get and document results
![Page 24: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/24.jpg)
Part 5: Summary
![Page 25: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/25.jpg)
Practices summaryPractices summary
Continuous Integration- nightly builds Test Driven Development - test first and Unit tests
coverage Refactoring Coding Standards - Code reviews In flight quality debt – constant monitoring Using priorities Hardening: time to get good build Automation! Use Wiki for improving communication
![Page 26: Testing in Agile](https://reader035.fdocuments.us/reader035/viewer/2022062220/55cdbf3dbb61eba30b8b458c/html5/thumbnails/26.jpg)
Question?