Upload
yasui-tsutomu
View
221
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
Automate your Functional Testing
©2014 YASUI Tsutomu aka yattom
What is Functional Testing?Functional testing is a quality assurance (QA) process[1] and a type of black box testing that bases its test cases on the specifications of the software component under test. Functions are tested by feeding them input and examining the output, and internal program structure is rarely considered (not like in white-box testing).[2] Functional Testing usually describes what the system does.
http://en.wikipedia.org/wiki/Functional_testing
What is YOUR Functional Testing?
<Insert your definition here!>
What is Functional Testing again?
• quality assurance (QA) process• black box testing• bases its test cases on the specifications• test by feeding input and examining the
output• internal program structure is rarely considered
In today’s context …What. test against web UI or API (input and
output)Why. to see it functions as specified and
expectedWho. engineers, but from the viewpoint of
the spec holder (= producers, directors)Where. on your dev PCWhen. anytime after development is doneHow. automation!
You Need Test Cases• A set of test cases that validates a function– Enough, no more than enough– Coverage can be measured
• We take a list of features (user stories / functions) and build test scenarios– What if there’s no such list? Scribble it from the
working system!
• Display list of search result
• Sorted by score• Abstract of each results
are shown• You can click to show the
page• You can choose to
translate• Show “https” clearly if
the link is https• Show type of contents
eg. PDF• Change keywords and
search again• From dropdown you can
choose “cache” “similar” “share”
• Pagination• Internationalization• Custom fields for specific
sites
Scenario Example1. Access google.com2. Enter keyword “automate functional
testing” and do search3. Display list of results in appropriate
order4. Read some abstracts5. Change keyword “testing” to “test”
and search again6. Move to next page7. Click the 3rd item and the page shows
• Display list of search result
• Sorted by score• Abstract of each results
are shown• You can click to show the
page• You can choose to
translate• Show “https” clearly if
the link is https• Show type of contents
eg. PDF• Change keywords and
search again• From dropdown you can
choose “cache” “similar” “share”
• Pagination
Good Test Scenarios• SMART– Specific – they are explicitly defined and definite – Measurable – the result is observable and
quantifiable – Achievable – they describe a realistic scenario – Relevant – they are related to the particular story – Time-bound – the result can be observed almost
instantly(Gojko Adzic, “Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing” http://amzn.to/1iABAXT )
Good Test Scenarios (contd.)
• At first focus on the Happy Paths– Default scenario; typical and successful– No exceptions, no errorshttp://en.wikipedia.org/wiki/Happy_path
• Mind maintainability!– Don’t be thorough too much– Don’t do too much– Don’t make it too long
Who write test cases?
Test case is:• Communication - between spec holders and
engineers• Expectation – how spec holder thinks the
system should work• Verification – engineers can verify the system’s
functionality
Who. engineers, but from the viewpoint of the spec holder (= producers , directors)
What is YOUR Functional Testing?
<Insert your definition here!>