OCR J277 2.3.2: Testing
The free BugBot lessons that teach this point, a robot to try it on, and the past-paper questions that test it.
What it covers
Every programmer, on every day of their life, makes mistakes and reads error messages. Getting comfortable with that early is the most useful thing in this module. An error message is not the computer telling you off. It is the computer telling you where to look.
- Read the whole message
- Syntax errors: Python cannot read it
- Runtime errors: it crashes while running
- Logic errors: no message at all
- How to fix things
Or do it in the simulator, with tasks that mark themselves
Lessons that teach it
- F1.4 Errors: syntax, runtime and logic Programming basics
Reading an error message, and the three kinds of error by their exam names. - F6.3 Testing and test data Robust programs
Iterative and final testing; normal, boundary, invalid and erroneous data; test plans in code. - F6.4 Debugging logic errors Robust programs
Finding the mistake that gives no message: watching, printing, stepping and common bugs.
Try it on a robot
The task from F1.4 Errors: syntax, runtime and logic, running here. Change the program and press Run.
Past paper questions on this
Real exam questions that test this, each worked through with a program you can run.
- AQA 8525 June 2025 Paper 1, Question 4: Validate a name by length until it is accepted, test data, and a username flowchart 13 marks
- AQA 8525 June 2025 Paper 1, Question 9: Which of five algorithms correctly total an array 2 marks
- AQA 8525 June 2024 Paper 1, Question 3: random.randrange, a test plan, and a syntax and a logic error 6 marks
- AQA 8525 June 2023 Paper 1, Question 10: Trace nested FOR loops over a list of scores and find the error 6 marks
- AQA 8525 June 2023 Paper 1, Question 11: Normal, erroneous and boundary test data, and a logic error 5 marks
- AQA 8525 June 2022 Paper 1, Question 5: A syntax error and a logic error in a random number program 5 marks
- AQA 8525 Sample Paper 1, Question 15: Fix a loop that prints odd numbers so that it works for negative input 4 marks
- AQA 8525 Sample Paper 1, Question 17: The highest common factor program that fails for 4 and 4 3 marks
- OCR J277 June 2025 Paper 2, Question 1: Normal, boundary and invalid test data, and a 1 to 100 range check 9 marks
- OCR J277 June 2024 Paper 2, Question 3(a), (b): Define a syntax error, then correct two logic errors in a range check 6 marks
- OCR J277 June 2024 Paper 2, Question 9(c): A range check that outputs VALID or NOT VALID, and its test data 7 marks
- OCR J277 June 2023 Paper 2, Question 2: Syntax and logic errors: correct a loop that should total an array 6 marks
The specification is OCR's own document; this page says which of our lessons teach point 2.3.2 and is not endorsed by the board.