13-Software Testing
13-Software Testing
Module No. 3
Software Testing – Introduction
Software Testing
• Computer programs are designed and developed by human beings and
hence are prone to errors.
• Carrying out the testing activities for projects has to be practiced with
proper planning and must be implemented correctly.
Testing
• One of the practical methods commonly used to detect the
presence of errors (failures) in a computer program is to test
it for a set of inputs.
The output
is correct?
Dijkstra:
“Testing can show the presence of bugs but never their absence.”
Software Testing – Introduction
Definition 1:-Software testing can be stated as a process of verifying and
validating that a software program or application or product,
1. Meets the business and technical requirements that guided its design and
development, and
2. Works as expected.
• Incorrect calculation
• Inconsistent processing
• To check if the system meets the requirements and be executed successfully in the
Intended environment.
error.
• Automation testing
• Reality
• Don’t know when to stop: update & update requirement continuously(CRs)-> Tester Updates
TC and re-tests
• Manual testing
on applicability to deploy
Why is Testing Important – Example
1
In April 2015, the Bloomberg terminal in London crashed due to a software glitch
that affected more than 300,000 traders in financial markets. It forced the
government to postpone a 3bn pound debt sale.
Why is Testing Important – Example
2
In May 2015, Airbus issued an alert for urgently checking its A400M aircraft when a report detected
a software bug that had caused a fatal crash earlier in Spain. Prior to this alert, a test flight in Seville
has caused the death of four air force crew members and two were left injured.
Why is Testing Important – Example
3
For over 2 years Nissan recalled over a million cars, thanks to a software glitch in the airbag
sensory detectors. Practically, the affected cars were unable to assess whether an adult was
seated in the car’s passenger seat and consequently would not inflate the airbags in case of a
crisis.
Why is Testing Important – Example 4
In July 2015, The New York Stock Exchange stopped trading due to an undisclosed
‘internal technical issue’, where all open orders were cancelled and the traders were alerted
and informed that they would receive information later. While responding to the shutdown,
NYSE announced that there was no cyber breach within the system and it resumed operations
Why does software have bugs
• Miscommunication or no communication
• Changing requirements
• Software complexity
• Programming mistakes
What are the benefits of Software Testing
• Cost-Effective: It is one of the important advantages of software testing. Testing
any IT project on time helps you to save your money for the long term. In case the
bugs are caught in the earlier stage of software testing, it costs less to fix.
• Security: It is the most vulnerable and sensitive benefit of software testing. People
are looking for trusted products. It helps in removing risks and problems earlier.
• Customer Satisfaction: The main aim of any product is to give satisfaction to its
Productivity