1.1 Intro & Necessity of Testing
1.1 Intro & Necessity of Testing
SOFTWARE TESTING
www.skcet.ac.in
“As ironic as it seems, the challenge of a
tester is to test as little as possible. Test
less but test smarter”
-Federico Toledo
Are you aiming to become an IT Professional?
But not interested in Coding?
??????
But still…..
Software Testing as a Career
Jayashree Natarajan,
Global Head
Tata Consultancy Services
Dan Belcher,
Co- founder,
Mabl
Wanted to be one among these?
● Test Engineer
● Quality Analyst.
● Testing Analyst.
● Automation Engineer.
● Test Architect.
Industrial Opportunities
……. and
many more
Fundamentals of Testing
testing”.
Software Testing
● “Testing is a process to detect defect in any product in order to
reduce various risks associated with the product and improve the
quality of it”.
16
Impacts of Software Defects
● In the 21st Century Computers and Software Systems are
pervasive
software systems
● If a defective code is executed, the system will fail to do what it should do (or
● Defects occur because human beings are fallible and because there is time
to
during operation
operational use.
● “Do not plan a test effort under the tacit assumption that no errors will be
found”
undiscovered error”
are unimportant, but some of them are expensive or dangerous. So we are in position
to take care that such mistakes are caught well in advance before deploying the
* Who to check? Bad Assumptions and Blind Spots; Basically the flaws may not be
identified clearly by the persons who made it. Ideally, someone else to check our work
Software Performance
Testing
In Everyday life:
'when we are testing
something we are
checking whether it is
OK'.
22
What if not tested?
THINK A BIT
● What is an error (mistake), bug(fault) and a
failure??
● Bug: A flaw in a component or system that can cause the component or
data definition.
A person makes
an error ...
…
that creates a
fault in the
software ...
Ensures that the software system meets Ensures that the functionalities meet the
all the functionality. intended behavior.
Verification takes place first and Validation occurs after verification and
includes the checking for mainly involves the checking of the
documentation, code, etc overall product.
2
Why is testing necessary?
● Software systems context
● Define errors/mistake, faults, failures and reliability
● Errors and how they occur,
● Cost of errors
● Exhaustive testing is impossible
● Testing and risk
● Testing and quality
● Testing and contractual, legal, regulatory
requirements
● How much testing is enough
* Software testing is very important because of the following
reasons:
1. Software testing is really required to point out the defects
and errors that were made during the development
phases.
2. It’s essential since it makes sure of the Customer’s
reliability and their satisfaction in the application.
3. It is very important to ensure the Quality of the product.
Quality product delivered to the customers helps in
gaining their confidence.
Cntd
4. It’s important to ensure that the application should
not result into any failures because it can be very
expensive in the future or in the later stages of the
development.
5. It’s important because cost of an error can vary from
nothing at all to large amounts of money and even
loss of life .
Software Systems context
● Software systems are an increasing part of life, from business
● Software that does not work correctly can lead to many problems
●May vary from nothing at all to large amount of money loss and
even loss of life.
Ex:
● Online trading systems: $100,000 per minute revenue loss
Testing and Risk
● Testing is a risk reduction process