0% found this document useful (0 votes)
14 views20 pages

13-Module 3 - Strategic Approach To Software Testing,-03!09!2024

Uploaded by

jaiakash0117
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views20 pages

13-Module 3 - Strategic Approach To Software Testing,-03!09!2024

Uploaded by

jaiakash0117
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 20

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.

• Unchecked, they can lead to a lot of problems, including social


implications.

• Testing the software becomes an essential part of the software


development lifecycle.

• 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?

I1, I2, I3, Our program


…, Expected
In, … results
=?
Obtained
- No code - No code results
inspection analysis
- No model - No bug fixing
“Inputs checking
” - No debugging
Software Testing – Introduction
What is Testing?
Many people understand many definitions of testing :

• Testing is the process of demonstrating that errors are not


present.

• The purpose of testing is to show that a program performs its


intended functions correctly.

• Testing is the process of establishing confidence that a program


does
what it is supposed to do.
Some experts said these definitions are
incorrect.
Software Testing – Introduction
Myer’s Definition on Software Testing

• The process of executing a program or a system with the intent of finding


errors.

• Testing is an activity that requires skilled people.

• Sound testing process is essential for good testing.

• It is an era of software testing tools.

• Need for a skilled test manager to look after testing.

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 validating
and
verifying 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.

3. Can be implemented with the same characteristics.

 Definition 2:- It is a process used to identify the correctness, completeness


and quality of developed computer software. It includes a set of activities
conducted with the intent of finding errors in software so that they could
be corrected before the product is released to the end users.
What is a Test?
• Test is a formal activity. It involvesa
strategy and a systematic approach. The
different stages
of tests supplement each other. Tests are
always specified and recorded.
• Test is a planned activity. The workflow
and the expected results are specified.
Therefore
the duration of the activities can be
estimated. The point in time where tests
• The
are test is the is
executed formal proof of
defined
software quality
Most Common Software Problems
• Incorrect calculation

• Incorrect data edits & ineffective data edits

• Incorrect matching and merging of data

• Data searches that yield incorrect results

• Incorrect processing of data relationship

•Incorrect coding/implementation of business


rules

•Inadequate software performance


Most Common Software Problems Cont’d
• Confusing or misleading data
• Software usability by end users & Obsolete Software
• Inconsistent processing
• Unreliable results or performance
• Inadequate support of business needs
• Incorrect or inadequate interfaces with other systems
• Inadequate performance and security controls file
Incorrect handling
Need of Software Testing
• Executing a program with the intent of finding an error.

• To check if the system meets the requirements and be executed successfully in

the Intended environment.

• To check if the system is “ Fit for purpose”.

• A good test case is one that has a probability of finding an as-yet-undiscovered


error.

• A successful test is one that uncovers a yet undiscovered error.

• A good test is not redundant.

• A good test should be “best of breed”.

• A good test should neither be too simple nor too complex.


Quality Software Should be
• Bug Free • Can be web-enabled
• Delivered on time • Adaptable to various OS like
• complete Unix, Linux, etc

• Within budget • Can run notepads, PCs, and


on as per
• Meet the requirement
Mainframes customer
of the customer.
requirement
• Easy to maintain s.
and
upgrade whenever
• Documented
needed.

Dr. Selva Kuma Sr S
Theory and Reality
• Theory
• Need sufficient time
• Baselined & freezed requirement
• Automation testing
• Have trained tester: test process, business flow…

• Reality
• Time pressure to keep the delivery date
• Continuously updated requirements
• Don’t know when to stop: update & update requirement continuously(CRs)-> Tester
Updates TC and
re-tests
• Manual testing
• Lack of dedicated software test environment; share, steal
• Inexperienced testers without appropriate training
Why is testing important
• To find and correct defects

• To check whether the client/user needs are satisfied

• To avoid user detecting problems

• Also to provide a quality product

• Provide confidence in the system

• To provide sufficient information to allow an objective


decision 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
car’s passenger
seated in the 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 reDsr.uSmelvea Kdumoapr
Why does software have bugs

• Miscommunication or no
communication

• Time pressure(Time Scheduling)

• 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.

• Product quality: It is an essential requirement of any software product. Testing


ensures a quality product is delivered to customers.

• Customer Satisfaction: The main aim of any product is to give satisfaction


to its customers. UI/UX Testing ensures the best user experience.
Skills required to become a Software
Tester
Passion
Verbal and Written Communication

Good Verbal and Written Communication


Analytical skills
Software
Tester
Attitude
Time Management & Organization Skills

Productivity

You might also like