Session 1-Test Strategy and Planning
Session 1-Test Strategy and Planning
Software testing is an integral part of the software development life cycle because
people are prone to making mistakes/errors. Some errors are insignificant, others
may have costly repercussions.
Since everyone makes mistakes, we have to thoroughly verify the result of our work,
as well as the work of others in everything we do.
Sequential
Incremental
● The waterfall model has a natural timeline where tasks are executed in a
sequential fashion.
● It is easy to manage and the process is well-documented.
● It is hard to get feedback passed up the waterfall. Test activities only occur after
all other development activities have been completed.
● High cost of defects.
The V-Model
Iterative development occurs when groups of features are specified, designed, built,
and tested together in a series of cycles, often of a fixed duration.
Regression testing is increasingly important in all iterations after the first one.
Agile development
● Functional Testing
● Non-functional Testing
● Change-related Testing
Functional testing
Non-functional testing
● Unit Testing
● Integration Testing
● Smoke/Sanity
● User Acceptance
● Localization
● Globalization
● Interoperability
And so on…
Non-Functional Testing
● Performance
● Endurance
● Load
● Volume
● Scalability
● Usability
And so on...
● Requirements-based testing
● Business-process-based testing
● Experience-based testing
● Functional correctness
● Functional appropriateness
● Functional completeness
Change-Related Testing
Confirmation testing
Confirmation testing (retesting) is re-execution of all test cases that failed due to the
defect to confirm that the defect has indeed been fixed.
Regression testing
The purpose of regression testing is to verify that modifications in the software have
not caused unintended adverse side effects and that the system still meets its
requirements.
PRODUCT Risks
Product Risk - what can be wrong with the result (with the software you are
developing) (i.e. defects in production)
PROJECT Risks
Project Risks - what can go wrong in the process of development (i.e. lack of
specialists at a project)
● Organizational issue
● Project issues
● Political issues
● Technical issues
● Supplier issues
What to do with the RIsks?
To determine
To prioritize testing
https://forms.gle/SJZWhQCVR4mrgemr9
Case Study 1 - Testing Types for Taxi Booking Application
The Internet and smartphone era has brought changes to well-known offline services and has
influenced every corner of our everyday life. If someone needs to book a flight, train tickets, a
room in a hotel, or order something in a restaurant, they most likely will use a mobile app for
these purposes.
Taxi services are certainly no exception to this. The traditional way to book a taxi is by physically
waving one down in the street or by calling the taxi company. These methods are hardly used
anymore. Booking services such as Pick Me that use mobile apps for their business are
currently valued most in the taxi market in Sri Lanka.
● Identify 5 software risks and mitigation plans for testing for the above requirement
4
5
Additional Readings:
https://youtu.be/2S--Ge3c-yA
In this video, Kirill Anisimov, QA Analyst at Exactpro, uses a Hollywood comedy to talk about quality
assurance and the typical issues we, as a software testing company, face in our daily work.
https://youtube.com/playlist?list=PL8Ql2_5rYPjjQ62TYjQISsI3CMcxVfIUG
ISTQB® is the leading global certification scheme in the field of software testing with over 1.1
million exams worldwide..
The series videos on ISTQB’s Foundation Level certification where we give you the gist of what
the exam program.