When you are testing software you need to pull together the following:
1. Test Plan
A test plan itself is a document that outlines the objectives, scope, approach, and resources required for testing a specific software product. It serves as a roadmap for the testing process and provides detailed information on how the testing will be conducted.
2. Testing Table
This is the table where you will record each of the tests, including the data used, the expected outcome and the actual outcome.
3. Testing Data
Testing data refers to the input values or conditions that are used during the testing process to ensure that the software or application being tested functions correctly. These data can include various scenarios, test cases, or specific data sets designed to cover a range of possible inputs. Test data should include normal, abnormal and boundary data for each test.
Test Plan Components
A test plan serves as a blueprint for systematically assessing and validating the functionality, quality, and reliability of software applications. It is an indispensable document that guides the testing process and ensures that software behaves as expected.
Here are the components of a test plan:
Component
Explanation
Context and Scope
Introduce the software and specify what will be tested.
Objectives
Define the goals of testing, such as finding defects and validating features.
Testing Strategy
Outline the types of testing to be performed and the overall approach.
Test Environment
List the necessary tools, hardware, software, and configurations.
Test Deliverables
Document the artifacts that will be generated during testing, like test cases and reports.
Schedule and Roles
Set timelines for testing phases and assign responsibilities to team members.
Risk Management
Identify potential risks and how they'll be managed throughout testing.
Test Execution
Describe how tests will be carried out, including test data and procedures.
What is a test plan?
Why is testing data important?
Testing Table - Example
Here is an example testing table for an program that finds the area of a rectangle:
| Test Case | Input (Length x Width) | Expected Output | Test Type |
|---------------------|------------------------|-----------------|-----------|
| Normal Data | 5 x 8 | 40 | Normal |
| Normal Data | 3 x 12 | 36 | Normal |
| Normal Data | 10 x 4 | 40 | Normal |
| Abnormal Data | 0 x 8 | Invalid | Abnormal |
| Abnormal Data | 5 x -3 | Invalid | Abnormal |
| Abnormal Data | -7 x -2 | Invalid | Abnormal |
| Boundary Data | 1 x 100 | 100 | Boundary |
| Boundary Data | 0 x 50 | 0 | Boundary |
| Boundary Data | 10 x 0 | 0 | Boundary |
Normal, Abnormal, and Boundary Data
Normal Data
Normal data refers to information that falls within the expected range or follows a standard pattern. It represents typical or common observations that are not unusual or exceptional. For example, the average temperature in a city during spring, which usually ranges between 10°C and 20°C, would be considered normal data. Another example could be a student's typical scores on a math test if they consistently fall within the average range of their class.
Abnormal Data
Abnormal data, also known as outliers, are observations that significantly deviate from the expected or normal range. They represent unusual, unexpected, or extreme values that do not align with the majority of the dataset. For instance, if the city suddenly experiences a day with a temperature of 35°C during spring, it would be considered abnormal data. Similarly, if a student scores 98% on a math test while the rest of their classmates score around 70%, it would be an outlier or abnormal data point.
Boundary Data
Boundary data represents values that lie at the edge or limit of what is considered normal. It indicates the threshold or boundary beyond which data may transition from normal to abnormal. For example, in a marathon race, the time it takes to complete the race within the first three positions could be categorized as boundary data. These times often define the limit of what is considered excellent or exceptional performance.
What is testing data?
In normal test data, the input values fall within the range.
Abnormal test data is useful for uncovering or handling exceptional cases.