So you think you can write a test case
-
Upload
srilu-balla -
Category
Software
-
view
245 -
download
4
Transcript of So you think you can write a test case
![Page 1: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/1.jpg)
SO YOU THINK YOU CAN WRITE A
TEST CASESrilu Pinjala (Sridevi)
PNSQC
![Page 2: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/2.jpg)
ASSUMING
Audience has experience estimating tests and scenarios.
Audience attempted to write test cases at some point.
![Page 3: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/3.jpg)
ISSUES
Can’t understand test cases written by others.
New testers are dependent on legacy testers.
Test Cases are not aiding to test accurately or completely.
![Page 4: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/4.jpg)
WHY ARE WE HERE?
Test Cases written during a project do not
suffice in supporting the product through its life.
![Page 5: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/5.jpg)
INTRODUCTION
Difference between TESTING and TEST CASE
Testing is ACTION Test Case is a DOCUMENT
![Page 6: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/6.jpg)
TEST CASE ..
Test Case is mere text. It is instructions and
verification in its simplest form.
Test Case is a journal with information about
what was tested and how.
Test Case belongs to the product.
![Page 7: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/7.jpg)
PURPOSE OF A TEST CASE
“A Test Case has two purposes: to expose an error, or to demonstrate correct execution.” (Jorgensen, 2014)
It explains when and how to test.
It serves as a guide to learn about the product.
It exposes errors in case of regression.
![Page 8: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/8.jpg)
TYPES OF TEST CASES
(Not to be confused with the types of testing.)
![Page 9: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/9.jpg)
TYPES OF TEST CASES
EXPLORING
To actually test
elements, functions,
flows, and more.
To test the heck out
of the product.
PILOTING
To navigate to the
test elements, that
need to be tested.
To avoid testing the
same thing twice.
![Page 10: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/10.jpg)
TYPES OF TEST CASES
EXPLORING PILOTING
![Page 11: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/11.jpg)
TYPES OF TEST CASES
EXPLORING
Unique
One action
Verify specifics
Do not cram
PILOTING
Usual
One set of actions
Verify generic
Do not cram
![Page 12: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/12.jpg)
USERS
Identify the test case user base
Author
Other testers
UA Testers
End Users
Business Analysts
Developers
Project, Product,
Program managers
![Page 13: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/13.jpg)
WHEN TO START WRITING TEST CASES?
![Page 14: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/14.jpg)
REQUIREMENTS
Requirements are written to create products that are powerful, with
the hopes that the whole process and the product can be controlled.
Every Freaking time!!
![Page 15: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/15.jpg)
Products could end up different, even when the acceptance
criteria is met.
REQUIREMENT TO PRODUCT
![Page 16: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/16.jpg)
TAKES ON A NEW LIFE
• Due to many moving parts, the product ends up slightly or entirely different with some expected features.
• It is what was asked for, but somehow different.
![Page 17: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/17.jpg)
TESTING REQUIREMENTS
Testing a requirement is not always possible.
They are abstract like
and not clear.
Interpreting them
leaves to assumptions
![Page 18: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/18.jpg)
BEST TIME TO WRITE
As soon as the requirement is signed off
Before the application is developed
Before starting any testing
![Page 19: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/19.jpg)
AFTER THE FIRST ROUND OF TESTING
GUI is available for exploring
Environment, database, services, etc. are
evident
Questions can be answered clearly
![Page 20: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/20.jpg)
WHAT DOES THE TEST CASE BELONG TO?
![Page 21: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/21.jpg)
SPEC, PROJECT, PRODUCT?
Verifying requirements is not enough testing
They are project specific for a limited time
Test Cases are for supporting the product
They have to be written, edited, and deleted as the
product changes through its life
![Page 22: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/22.jpg)
KEY COMPONENTS OF A TEST CASE
![Page 23: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/23.jpg)
KEY COMPONENTS
Test Step
User actions
Data inputs
Instructions to the
tester
Expected Result
Verification of GUI
and Data changes
Specifics of changed
state
Everything else are bells and whistles.
![Page 24: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/24.jpg)
HOW NOT TO WRITE Scenario Test step Expected
ResultCell phone
charges
Charge the
cell phone
Cell phone
charged fully
Scenario Test step Expected ResultOpen Website Go to Home Page Page Loads fully
![Page 25: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/25.jpg)
HOW TO WRITE
Robots do not understand logic
They execute specific
instructions
They are only as good as your
instructions
LIKE TALKING TO A ROBOT
![Page 26: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/26.jpg)
CASE IS ABOUT HOW
![Page 27: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/27.jpg)
TEST STEP - EXAMPLES
Go to URL – www.pnsqc.org
Type in field Username (myname)
Check ON checkbox ALL
SQL - [SELECT userID, userKey FROM Users
WHERE userKey = 7]
Go back one page; Refresh page; Go forward one page.
![Page 28: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/28.jpg)
TEST STEP - DO
Keep the steps clear, simple, specific (CSS)
One step at a time / One function at a time
Instruct to use specific data. Explain where to
get it.
Present Tense – test case should be in present
tense
![Page 29: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/29.jpg)
TEST STEP – DON’TS
Jargons, abbreviations, project specific terms to
describe. They change!!
Repeat above steps. They change!!
Test a feature. Tell how to test.
Valid data, invalid data, etc. Give examples of
valid and invalid
![Page 30: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/30.jpg)
RESULTS - EXAMPLES
Page appears with title Login
Header consists of link Click here
Error message “so and so” appears.
Auto-complete appears with 5 matching suggestions.
SQL verification – columns UserID & Pass
SQL Result – Top 5 match the search results
![Page 31: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/31.jpg)
RESULT – DO’S
Results should be tangible and verifiable.
Keep it clear, simples, specific (CSS)
one step can have multiple verifications.
List as many verifications as necessary (title, logo, text, images, links, error messages, etc.)
Describe verbatim / WYSWIG
![Page 32: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/32.jpg)
RESULTS – DON’TS
Loads successfully – Explain successful
It has no errors – Explain what kind of errors
System accepts – Explain how the system
accepts by verifying text, database, etc.
It works – Explain how to verify it works
![Page 33: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/33.jpg)
TEST CASE LIFE CYCLE
![Page 34: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/34.jpg)
test case Life Cycle
![Page 35: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/35.jpg)
START HERE
Study / Revise – the application
Map – the pages, elements, functions or features
Explore – the interfaces, databases, environments, services, etc.
Design – test cases with appropriate names and organize them
in suitable categories.
Integrate – the mini test cases and update related information
needed for test execution.
![Page 36: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/36.jpg)
STUDY / REVISE
Study the product
No. of pages, each page
CSS and unique parts
Authentication roles
Session timeouts
Notifications and Errors
Many more
![Page 37: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/37.jpg)
PICK A STYLE
Model the tests around the GUI features, core functions, flows, data, etc.
There is no wrong or right way of testing. The decision is based on your best judgement.
If it does not work, change it. Its okay.
![Page 38: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/38.jpg)
MAP
page Login
field Email or phone
field Password
checkbox Keep me signed in
button Sign In
link Can’t access your account?
link Sign in with a single-use code
logo Outlook
![Page 39: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/39.jpg)
MAP
Split the application into modules or pages
Identify the common CSS elements
List the unique elements and their hierarchy
Use a spreadsheet to list the elements by their hierarchy.
Hierarchy – If functions in Level-1 fail, there is not point in
testing the functions in Level-2 under that function.
![Page 40: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/40.jpg)
EXPLORE
URL – invoke in multiple browser and operating systems.
Page – refresh, resize, go back and forth
Authenticate – login flow, user roles, etc.
Profile information – set up, edit, delete profiles.
Search feature – autocomplete, results, etc.
Text fields – field validation (alpha, numeric, chars)
Links – what do they open. Buttons – what do they process
Session time out, etc.
![Page 41: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/41.jpg)
EXPLORATORY TEST CASEPage AttributesGo to URL Hotmail.com Page open with title – Sign In
Left section –Image – www.wiki.com/mycompany/signimageField – enter your phone number and we’ll send you thedownload link; Button – Send My LinkRight section –Logo – OutlookFields – Email or Phone, PasswordCheckbox – Keep me signed inButton – Sign inLinks – What’s this?, Can’t access your account?, Sign in with asingle-use codeFooter section –Links – Contact Us, Terms of Use, Privacy & Cookies, Link
Disclaimer ©Copyright
![Page 42: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/42.jpg)
DESIGN
Design test cases for all the known scenarios with data,
environment, services information.
They maybe used individually or in sets.
Multiple scenarios may be listed in one test case. (This is not
same as cramming)
Maintain a separate suite of these test cases to be called easily.
Update here and related test sets update instantly.
![Page 43: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/43.jpg)
DESIGN TEST CASESTest Step Expected Result
Select any amount of text.Click icon CUT (Home > Clipboard >
Cut)
The selected text is cut (disappears) from the page /
cell.
Test Step Expected Result
Select any amount of text.Click icon Copy (Home > Clipboard >
Copy)
The selected text persists on the page.
It does not disappear from the page.
![Page 44: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/44.jpg)
INTEGRATE
Integrate the individual test cases to form scenario based test
cases from end to end telling a story.
Add information about data inputs and verification. Any other
verifications too.
These test cases may now be linked to any requirements as they
fit.
Organize the test cases in test execution order and dependency.
![Page 45: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/45.jpg)
THE CYCLE GOES ON
Test case is not a one time thing.
Write it, but don’t forget it. Visit them from time to time.
CHANGED FEATURES – update existing test cases.
NEW FEATURE New test case will be needed.
Edit, Merge and delete as necessary.
Having an Owner for the test cases is recommended.
![Page 46: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/46.jpg)
REVISE
When a exploratory test
case or condition or data is
updated, the Full test case is
automatically updated.
Updating one test case will
update the test sets across
the suite.
![Page 47: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/47.jpg)
TEST CASE NAMING CONVENTION
Naming is a part of Test Case DESIGN
![Page 48: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/48.jpg)
NAME IS ABOUT WHAT
First part – belongs to the product
Second part – belongs to the module, page
Third part – belongs to the feature
Fourth part – belongs to the function
(It could have more parts)
![Page 49: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/49.jpg)
EXAMPLES
• Ms.PPT.Invoke
• Ms.PPT.mHome_iCut
• Ms.PPT.mHome_iCopy
• Ms.PPT.mHome_iPaste
• Ms.PPT.mHome_iPaste_oPaste
• Col.Search
• Col.nav.Home
Clearly identifying test cases
make it easy to sort through
them to identify..
What is covered.
What is not covered.
Eliminates redundancy
Locating, locating, locating
![Page 50: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/50.jpg)
GO THE DISTANCE
ENABLE THE TESTER
PROVIDE TOOLS
ACCESSORIZE THE
TEST CASES
![Page 51: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/51.jpg)
TEST DATA
List test data in the test step OR
List test data in a separate column
Provide exact data, SQL queries and verification
Maintain Wikis, Excel sheets, etc. with Test data, environment information and screen shots.
Provide ideas and tools to execute tests faster.
![Page 52: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/52.jpg)
DATA SHEET
Test data may be provided in data sheets.
Certain test cases require the same steps and
flow, but require variety of data to result various
expected results.
Each iteration does not need a new test case
Pair the test case with a data sheet.
![Page 53: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/53.jpg)
AVOID HUMAN ERRORS
We are intelligent beings, but not as smart as we assume we
are. If you think you cannot error, you don’t know yourself
![Page 54: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/54.jpg)
TEST THIS!!
If you can read this, You just missed typo bugs!!
Instruct to copy paste text in a Word document, to not miss typos.
Don’t forget to compare it to previous versions.
![Page 55: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/55.jpg)
PICTURE SAYS A 1000 WORDS
So, be Specific about what to look for.
Highlight what to look for and what to ignore.
Avoid missing on actual
bugs as well as invalid
bugs.
Going the extra mile, saves
tons of time
![Page 56: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/56.jpg)
FIND THE DIFFERENCES
Explain what is acceptable
Explain localization and
marketplace exceptions
Explain if variations are
expected and known between
browsers and devices.
![Page 57: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/57.jpg)
PROVIDE THE TOOLS Provide tools to get the job done fast and
Right!!
Testing is not the place to test the testers
about testing a product they don’t know.
![Page 58: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/58.jpg)
LESSONS LEARNT
School teaches lessons and gives tests. Software
gives you tests and teaches you lessons.
Note down what you learnt in Clear, Simple, Specific
instructions.
Don’t assume the tester will understand and know
how to test. They are just executing your instructions.
![Page 59: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/59.jpg)
SUMMARY
Test Case belongs to the product. Its name should be
associated to the product, module, feature and functions.
Test Cases support the product through its life, so don’t
write the them on assumptions based on requirements.
Write test cases after exploring first hand.
Exploratory test cases explore every inch of the product.
Pilot test cases merely navigate through the product.
![Page 60: So you think you can write a test case](https://reader037.fdocuments.in/reader037/viewer/2022110109/58f0230b1a28ab1b4a8b458b/html5/thumbnails/60.jpg)
THE END
Want a laugh – http://qasrilu.blogspot.com
Want to connect – https://linkedin.com/in/SriluPinjala
Want to join PNSQC – [email protected]
Srilu is leaving the building. I hope you had fun!!