Agile Test Byte Leanne Howard Agile Practices Consultant
www.planittesting.com
© Planit Software Testing
1
Seven Deadly Sins Manifesto and Principles
Iteration Planning
Testing Quadrants
www.planittesting.com
Testing Techniques
Test Automation
Session Sheets
Metrics and Test Assets
© Planit Software Testing
2
The Agile Manifesto During Agile testing, it’s helpful to keep the four central tenets of the Agile Manifesto in mind to help guide the decision-making process.
www.planittesting.com
01 Individuals and interactions over processes and tools
02 Working software over comprehensive documentation
03 Customer collaboration over contract negotiation
04 Responding to change over following a plan
© Planit Software Testing
3
Supporting Principles – 12 Agile Principles 1) Our highest priority is to satisfy the customer through the early an continuous delivery of valuable software. 2) Welcome changing requirements, even late in the development. Agile processes harness change for the customer's competitive advantage.
7) Working software is the primary measure of progress. 8) Agile processes promote sustainable development. The sponsors developers and used should be able to maintain a constant pace indefinitely.
9) Continuous attention to technical excellence and design enhances agility.
3) Deliver working software frequently, from a couple of weeks to a couple of months, with preference to the short time scale.
10) Simplicity – the art of maximising the amount of work not done – is essential.
4) Business people and developers must work together daily throughout the project.
11) The best architecture, requirements and designs emerge from self organising teams.
5) Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
12) At regular intervals, the team reflects on how to be more effective, then tunes and adjusts behaviour accordingly.
6) The most effective and efficient method of conveying to within a development is face to face conversation. www.planittesting.com
© Planit Software Testing
4
Software Testing Testing is the responsibility of ALL team members
www.planittesting.com
Acceptance Criteria
Definition of Done
Work closely with team
Automated testing
Exploratory testing
Regression testing
Defect management
‘Build quality in’ and not ‘test it out’
© Planit Software Testing
5
Iteration Planning Start testing on Day 2 Break into small chunks Understand Acceptance Criteria Complete ‘In Progress’ before starting new Do not develop up till the last minute
www.planittesting.com
© Planit Software Testing
6
Test Plan Full Business Process E2E BDD scenarios
Functionality E2E / Integration
UI
App server Web server Database server Middleware Host SecurityID
System Unavailable
User story name and detail
Host
Online Offline
www.planittesting.com
Device Disruption Device interruption Network Connectivity Server timeout Upgrade Reporting
Regression
Risk
Audit report Audit log Error log Security log Named reports © Planit Software Testing
7
Systematic & Structure Based Techniques SYSTEMATIC Equivalence Partitioning
Boundary Value Analysis
State Transition Testing
Decision Table Testing
STRUCTURE-BASED Statement Testing
www.planittesting.com
Decision Testing
Branch Testing
Condition Testing
© Planit Software Testing
8
Session Based Testing (SBT) • Is a software test method • That aims to combine accountability and exploratory testing • To provide rapid defect discovery • Creative on-the-fly test design • Management control and metrics reporting
www.planittesting.com
© Planit Software Testing
9
Elements included within SBT
Mission
Charter
Session Report
www.planittesting.com
Session
Debrief
© Planit Software Testing
10
Testing Quadrants MANUAL
Functional Test Story Tests Prototypes Simulations
Exploratory Testing Scenarios Usability Testing Acceptance Testing Alpha/Beta
Unit Tests Component Tests
Performance & Load Testing Security Testing “ility” Testing
AUTOMATED
www.planittesting.com
Business Related
Technology Related
Objective Evaluation
Supports building the product
AUTOMATED & MANUAL
TOOLS
© Planit Software Testing
11
Rapid Delivery and Feedback Accelerate Continuous Delivery
Idea
Story
Production
Actionable Intelligence
www.planittesting.com
© Planit Software Testing
12
Automation Fundamentals FUNDAMENTAL CHALLENGES
NOT a silver bullet
www.planittesting.com
It is a development process
Do you know the ROI?
© Planit Software Testing
13
Test Automation Pyramid Tests not practical to automate
Other
Manual tests are executed
Find gaps Exploratory Tests
Acceptance and regression
Acceptance Tests including System Integration
Automated tests are executed
Drive development
Unit Tests
www.planittesting.com
© Planit Software Testing
14
‘Tip of the Iceberg’ Did you know that only 10% of an iceberg is actually visible? UI
http messages (web server) Application-toApplication (business logic)
Think of your current system as an iceberg. 9/10ths of it are invisible or behind the screen. www.planittesting.com
© Planit Software Testing
15
Agile Metrics and Test Assets • Accepted user stories – potentially shippable product/code • Conformance with the Definition of Done • Burndown charts
• Test Strategy • Iteration / Test plan • Status / Exit reporting www.planittesting.com
© Planit Software Testing
18
Summary Seven Deadly Sins Manifesto and Principles
Iteration Planning
Testing Quadrants
www.planittesting.com
Testing Techniques
Test Automation
Session Sheets
Metrics and Test Assets
© Planit Software Testing
19
Questions? Leanne Howard Agile Practices Consultant Planit Software Testing Main: +61 2 9464 0600 Dir: +61 2 9464 0605 Mob: +61 410 086 356 Email:
[email protected]
www.planittesting.com
© Planit Software Testing
20