Objective
The objective of this topic is to show the:
• How to define Software Testing Principles
• What are the types of Software Tests
• What is Test Planning
• Test Execution and Reporting
• Real-Time Testing
Chapter 10 – Software Testing -
Implementation
• The testing process
• Determining the test methodology phase
• Planning the tests
• Test design
• Test implementation
• Test case design
• Test case data components
• Test case sources
• Automated testing
• The process of automated testing
• Types of automated testing
• Advantages and disadvantages of automated testing
• Alpha and beta site testing programs
How to define Software Testing
Principles
• Testing
The execution of a program to find its faults
• Verification
The process of proving the programs correctness.
• Validation
The process of finding errors by executing the program in a real
environment
• Debugging
Diagnosing the error and correct it
Software Testing Principles
• To remove as many defects as possible before test since
the quality improvement potential of testing is limited
What are the Types of Software Tests
• Unit Testing (White Box)
• Integration Testing
• Function Testing (Black Box)
• Regression Testing
• System Test
• Acceptance and Installation Tests
10.1 The Testing Process
• Testing is done throughout the development
process.
• Testing is divided into phases beginning in the design
phase and ending at the customer’s site.
• Testing process is illustrated in the next slide.
• The two fundamental decisions that must be made
before planning for testing can occur are:
• What is the required software quality standard, and
• What is the software testing strategy.
Determining the test
methodology
Planning the tests
Designing the tests
Performing the tests
(implementation)
Who •Performs the Tests?
Unit Testing – done by the programmer and/or
development team.
• Integration Testing – can be the development team or a
testing unit.
• System Testing – usually done by an independent testing
team (internal or external (consultants) team.
• For small companies, another testing team from another
development team can be used and swapped.
• User Acceptance Testing – With potential User.
Test Case Sample