Testing to Inform Development
-
“Testing to Inform Development” refers to the process of implementing several forms of testing throughout the programming project to pinpoint any errors or issues that need fixing.
-
Initial testing occurs during the development phase. This helps with the initial assessment of how the programme responds to different inputs and conditions.
-
Following this, incremental testing should be carried out after each change or addition to the source code. It ensures that the most recent amendments haven’t caused any disruptions or discrepancies.
-
Feature testing follows. It is conducted to ensure that each feature works as anticipated individually.
-
Integration testing is next in line, designed to confirm that the different parts of the project work together smoothly.
-
System testing follows, assessing the programme as a whole to make sure that all of its elements work in harmony.
-
Acceptance testing forms the final part of the process, determining whether the project fulfils all the requirement specifications outlined at the start of development.
-
For each form of testing mentioned above, expected results need to be documented prior to the actual test taking place. This allows comparison between the anticipated outcome and the actual outcome.
-
Any discrepancies between expected and actual results are called test failures. These should be logged with detailed descriptions, then reviewed and rectified before retesting.
-
Test data should be chosen with care. It should include normal (expected), boundary (extreme but valid), and erroneous data (invalid).
-
To enhance efficiency and effectiveness, consider automating tests with testing frameworks and scripts.
-
Review the output of each test thoroughly and be consistent in your methodology.
-
Revisiting test plans and revising them as needed ensures that you’re always aligned with the project’s current state.
In essence, you should be testing frequently and thoroughly throughout your project development. Not only does this reveal errors and areas of potential improvement, but it also aids understanding of the project’s behaviour.