OCR · GCSE · Computer Science
Course version: J277 · Version from Sept 2022
Testing: The purpose of testing
Testing is a vital part of software development designed to ensure a program functions as intended and meets its original requirements.
Checked against the OCR J277 specification on .
- Point 1 of 5
- 4 key terms
Study notes
From the checked teaching notes for this specification point.
The idea
Testing is a vital part of software development designed to ensure a program functions as intended and meets its original requirements. Its primary purpose is to uncover logic errors and defects before the software is released to users. Testing also verifies that a program is robust, meaning it can handle unexpected actions without crashing. Two main approaches exist: iterative testing occurs during development to check individual modules, while terminal testing evaluates the finished program. For example, testing a calculator app ensures it adds correctly (functionality) and does not crash when dividing by zero (robustness). Exhaustive testing is usually impossible, so testing aims to build confidence in the software's reliability.
What earns the marks
- States that testing aims to find logic errors and defects before a program is released to users.
- Explains that testing confirms the software meets its original requirements and functions as intended.
- Describes how testing ensures robustness by verifying the program can handle unexpected actions without crashing.
- Distinguishes between iterative testing (during development) and terminal testing (at the end of development).
- Explains that exhaustive testing is usually impossible, so testing builds confidence and reduces risk rather than proving a program is completely bug-free.
Common mistakes and how to put them right
Confusing testing with debugging.
Put it right: Testing finds and reports a defect, while debugging is the process of locating and correcting the cause.
Assuming testing can prove a program is completely bug-free.
Put it right: Exhaustive testing is usually impossible, so testing only builds confidence and reduces risk.
Believing testing only happens at the end of development.
Put it right: Iterative testing occurs throughout the development process to catch errors early.
Exam tips
- If a question asks why testing is important, refer to finding defects, meeting requirements and ensuring robustness rather than just writing 'to make sure it works'.
- Be prepared to define and distinguish between iterative testing and terminal testing in exam scenarios.
Try the lesson
The start of the Testing: The purpose of testing lesson, made from checked teaching notes for this specification point.
Have a go first
What is the main purpose of testing a program?
Listen
Testing is a vital part of software development designed to ensure a program functions as intended and meets its original requirements. Its primary purpose is to uncover logic errors and defects before the software is released to users. Testing also verifies that a program is robust, meaning it can handle unexpected actions without crashing. Two main approaches exist: iterative testing occurs during development to check individual modules, while terminal testing evaluates the finished program. For example, testing a calculator app ensures it adds correctly (functionality) and does not crash when dividing by zero (robustness). Exhaustive testing is usually impossible, so testing aims to build confidence in the software's reliability. A strong answer earns marks for these points. States that testing aims to find logic errors and defects before a program is released to users. Explains that testing confirms the software meets its original requirements and functions as intended. Describes how testing ensures robustness by verifying the program can handle unexpected actions without crashing. Distinguishes between iterative testing (during development) and terminal testing (at the end of development). A common slip: Confusing testing with debugging. Instead, testing finds and reports a defect, while debugging is the process of locating and correcting the cause. Exam tip: If a question asks why testing is important, refer to finding defects, meeting requirements and ensuring robustness rather than just writing 'to make sure it works'.
See it
Key words
Say what each word means before you turn the card.
Finding defects
Try answering aloud or in your head before turning the card.
Meeting requirements
Try answering aloud or in your head before turning the card.
Robustness
Try answering aloud or in your head before turning the card.
Iterative and terminal testing
Try answering aloud or in your head before turning the card.
See every definition
- Finding defects
- Testing aims to uncover logic errors and defects before the software is released to users.
- Meeting requirements
- Testing confirms that a program functions as intended and meets its original requirements.
- Robustness
- Testing verifies that a program can handle unexpected actions without crashing.
- Iterative and terminal testing
- Iterative testing occurs during development to check individual modules, while terminal testing evaluates the finished program.
Label the diagram
Some boxes have lost their names. Pick the right name for each number.
1Box 1
2Box 2
3Box 3
There is more to this lesson
The full lesson goes on to check your understanding and help you earn the marks. Create a free account to carry on, with your progress saved.
A week of Premium from your first lesson · Then the free plan continues · No card, no charge
Test your understanding of Testing: The purpose of testing
Active recall beats re-reading. Take an instant quiz now to test what you’ve learned and lock it into long-term memory.
A week of Premium from your first lesson · Then the free plan continues · No card, no charge