testing for everyone agile yorkshire
DESCRIPTION
Trying to explain the testers mindset and how it can help everyone develop better softwareTRANSCRIPT
Testing for Everyone
Trying to answer the age old questionWhat is the ‘Testing Mindset’?
Who Am I?
Ady Stokes
Nearly 2 decades in Software Testing,
Quality Assurance and Risk management and still learning
Currently manage QA and Risk at HML in Skipton for their
Business Intelligence Division
Contacts:
Twitter: @CricketRulz
Email work: [email protected]
Email home: [email protected]
Where I Work
HML (part of the Skipton Group)
Has over 42 billion in assets under management
Offices in Skipton, Derry, Glasgow
Highly regulated financial organisation
Agile adoption since 2008
Everyone Tests!
Everyone Tests!
It’s a fact of life everyone tests all the time!
Think of your first coffee this morning. You
had a sip to see if it wouldn’t burn your mouth!
That’s testing!
When you had your generic satellite system installed you paused, rewound and fast forwarded live TV! That’s testing!!!
Everyone tests! It’s nothing to be frightened of
However, getting from undisciplined to structured,
now that takes skills and knowledge!
Triangle Test
Triangle Test ExampleBy Glenford J Myers 1979
Scope – Software defines what type of triangle based on 3 possible outcomes,
Equilateral (all sides same length)
Isosceles (two sides of equal length)
Scalene (all sides are unequal in length)
List as many tests as you can in 10 minutes
Triangle Test
Side One:
Side Two:
Side Three:
Output Grid
DRAW
Possible TestsIt is impossible to execute every possible test, but here are some things that I’d expect you to have covered:
• Valid entry for all three types of triangle
• Permutations for isosceles with two equal sides? (3,3,4; 3,4,3; 4,3,3)
• Incorrect or mathematically impossible triangles (1,2,3; 1,1,9999 ; 2, 5, 10)
• Negative and zero inputs for at least one side (0, -1,)
• Blanks (blank, 1, 1) for each field?
• Spaces (space, 1, 1) for each field?
• Boundaries and decimals (9999, 9999, 9999, 0.99 etc.)
• Field size, what is the maximum entries or is it unlimited?
• Special Characters ($%^&), Alpha’s, Alphanumeric?
For each of the above do you know what the result should be?
Can you think of any others?
It Is Not Fair Because…
The triangle test is not really fair because…
• You have no requirements so everything you did was based on an assumption about the program
• I didn’t offer any help with what valid and invalid data was
• I didn’t tell you how to start the program, what version it was, if it was live or not.
• There was no information on dependency or performance
But hopefully it does make you think about testing and how there are a great many things that can affect and influence your software?
So, What is the‘Testing Mindset’
So, What is the‘Testing Mindset’
It’s not…
Developers Make, Testers Break
(Sorry, but it was like that when we got there!)
Or
Testers Tell Tales To Teacher!
(We want to tell YOU directly because we are all in it together)
Its more like…
What would happen given every possible practical scenario?
The Testing Mindset
‘We can’t solve problems by using the same kind of thinking we used when we created them’
Albert Einstein
12
Types of Tests!
When it comes to software testing there are many methods techniques and considerations which are useful to be aware of.
• Boundary Value Analysis – at the edge of value entry
• Equivalence Partitioning – grouping value entry
• Unit testing – focus on individual components
• Functional testing – focus on outputs
• Load / Stress / Performance / Deployment and Rollback
• Happy path / Sad path – does as it should, handles the unexpected
• Usability – flow / understandable / navigation
• Security – access / safe / secure
Top tips for testing
Be curious
Don’t make assumptions
14
The Testing of Requirements
Old World
• Singular
• Complete
• Consistent
• Correct
• Current
• Unambiguous
• Prioritised
• Traceable
New World
• Singular
• Complete
• Consistent
• Correct
• Current
• Unambiguous
• Prioritised
• Traceable
• Testable
Questions?
Motto: Don’t agitate, collaborate!
Who Am I
Ady Stokes
Contacts:
Twitter: @CricketRulz
Email work: [email protected]
Email home: [email protected]