Académique Documents
Professionnel Documents
Culture Documents
Objectives of 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. To check if the system does what it is expected to do.
Requirements Analysis
Identify types of tests to be performed. Gather details about testing priorities and focus. Prepare Requirement Traceability Matrix (RTM). Identify test environment details where testing is supposed to be carried out.
Test Planning
Preparation of test plan/strategy document for various types of testing. Test tool selection Test effort estimation Resource planning and determining roles and responsibilities. Training requirement
Environment Setup
Understand the required architecture, environment set-up and prepare hardware and software requirement list for the Test Environment. Setup test Environment and test data. can be done in parallel with Test Case Development Stage. Test team may not be involved in this activity.
Test Execution
Execute tests as per plan Document test results, and log defects for failed cases. Map defects to test cases in RTM Retest the defect fixes Track the defects to closure Bugs will be reported back to the development team for correction.
Testing Methods
Black Box Testing White Box Testing Gray Box Testing
Levels of Testing
Unit Testing (White Box) Integration Testing Function Testing (Black Box) Regression Testing System Test User Acceptance Test
Unit Testing
Individual components are tested. It is a path test. To focus on a relatively small segment of code and aim to exercise a high percentage of the internal path. Disadvantage: the tester may be biased by previous experience. And the test value may not cover all possible values.
Integration Testing
Integration Test case differs from other test
cases in the sense that it focuses mainly on the interfaces & flow of data/information between the modules. Here priority is to be given for the integrating links rather than the unit functions which are already tested. Types of Integration Testing: Top-down Integration Test Bottom-up Integration Test
The control program is tested first. Modules are integrated one at a time. Emphasize on interface testing Advantages: No test drivers needed. Interface errors are discovered early. Modular features aid debugging Disadvantages: Test stubs are needed. Errors in critical modules at low levels are found late.
Top-down Testing
T1 A T2 B B A
T1
T2
T3
T3 C T4
Allows early testing aimed at proving feasibility Emphasizes on module functionality and performance Advantages: No test stubs are needed. Errors in critical modules are found early Disadvantages: Test drivers are needed. Interface errors are discovered late.
Bottom-up testing
Test Drivers Test Drivers Test Drivers
Level N
Test Drivers
Level N
Test Drivers Level N-1
Level N
Level N-1
Function Testing
1.
2.
Designed to exercise the code to its external specifications Testers not biased by knowledge of the programs design. Disadvantages: The need for explicitly stated requirements. Only cover a small portion of the possible test conditions.
Regression Testing
Test the effects of the newly introduced changes on all the previously integrated code. The common strategy is to accumulate a comprehensive regression bucket but also to define a subset. The full bucket is run only occasionally, but the subset is run against every spin. Disadvantages : To decide how much of a subset to use and which tests to select.
System Testing
Testing the fully integrated
applications including external peripherals in order to check how components interact with one another and with the system as a whole. This is also called End to End scenario testing. Verify thorough testing of every input in the application to check for desired outputs. Testing of the users experience with the application.
Implementation
A marketing company wishes to construct a
decision table to decide how to treat clients according to three characteristics: Gender, City Dweller, and age group: A(under 30), B(between 30 and 60), C(over 60). The company has four products (W, X, Y and Z) to test market. Product W will appeal to female city dwellers. Product X will appeal to old females. Product Y will appeal to Male middle aged shoppers who do not live in cities. Product Z will appeal to all but young city dwellers.
Solution (cntd)
4. Enter All Possible Rules The top of the table would look as follows: Note that all combinations of values are present.
Solution (cntd)
5. Define Actions for each Rule
Equivalence Partitioning
It is a method for deriving test cases. To use equivalence partitioning, you will need to perform the following steps: Identify the equivalence classes. 1. Program specifications should identify both valid and invalid inputs for the program. 2. Valid EC are chosen to represent valid inputs. 3. Invalid EC are chosen to represent invalid inputs. Design test cases.