Skip to main content
Northern IrelandDigital TechnologySyllabus dot point

How are programs tested with test data, what types of error occur, and how is a program evaluated against its requirements?

Explain how programs are tested using a test plan and normal, boundary and erroneous test data, describe syntax, logic and runtime errors, and explain how a program is evaluated against its requirements.

A CCEA GCSE Digital Technology answer on testing and evaluating programs for the Programming route (Unit 4), covering test plans and normal, boundary and erroneous test data, the types of error (syntax, logic and runtime), and evaluating a program against its requirements.

Generated by Claude Opus 4.810 min answer

Reviewed by: AI editorial process; not yet individually human-reviewed

Have a quick question? Jump to the Q&A page

Jump to a section
  1. What this dot point is asking
  2. Testing with a test plan
  3. Normal, boundary and erroneous test data
  4. Types of error
  5. Testing and evaluating in practice
  6. Why this matters

What this dot point is asking

A program is not finished until it has been tested and judged against what it was meant to do. The Programming route (Unit 4, Digital Development Concepts) expects you to explain how programs are tested using a test plan and different kinds of test data, describe the types of error that occur, and explain how a program is evaluated against its requirements. This covers the testing and review stages of the development cycle as they apply to programming.

Testing with a test plan

Testing checks that a program works correctly, and it should be done systematically rather than by guesswork.

A test plan makes testing thorough and provides evidence that the program has been checked. Without one, it is easy to miss cases and assume a program works when it does not.

Normal, boundary and erroneous test data

Good testing uses carefully chosen test data of three kinds, so the program is checked across the range of possible inputs.

Using all three is important because errors frequently occur at the boundaries (for example a test that wrongly accepts 101) or with unexpected, erroneous input (for example crashing when a letter is typed where a number is expected). Testing only with normal data would miss these common faults.

Types of error

Three kinds of error are examined, and you must be able to tell them apart.

A syntax error breaks the rules of the programming language, such as a misspelt keyword or a missing bracket, so the program will not run or translate at all. A logic error means the program runs but produces the wrong result, because the algorithm's logic is faulty, for example using the wrong operator or condition. A runtime error occurs while the program is running and causes it to stop or crash, for example dividing by zero. The key contrast for the exam is that a syntax error stops the program running, while a logic error lets it run but gives a wrong answer, which makes a logic error harder to find because nothing reports it.

Testing and evaluating in practice

The exam often asks you to design tests or judge a program, so the skill is choosing test data and evaluating against the requirements.

After testing, the program is evaluated: it is judged against the requirements agreed at analysis, deciding how fully it meets them, whether it is reliable and usable, and what could be improved. Evaluation differs from testing because it asks whether the program meets its purpose, not just whether it runs.

Why this matters

Testing and evaluation make a program reliable and confirm it meets its brief, completing the development cycle. They are examined in Unit 4 and applied directly in the Unit 5 practical, where you must test your program with suitable data and evaluate it against the task. Knowing the kinds of test data, the kinds of error, and the difference between testing and evaluation secures marks across both.

Exam-style practice questions

Practice questions written in the style of CCEA exam questions on this dot point, with worked answer explainers. The year tag is the paper they imitate, not the source.

CCEA-style (Unit 4)4 marksA program accepts a test mark from 0 to 100. Explain the terms normal, boundary and erroneous test data, giving an example value of each for this program.
Show worked answer →

Normal data is typical, valid data that should be accepted, for example 57 (1 mark with example).

Boundary data is data at the edge of what is allowed, testing the limits, for example 0 or 100 (the lowest and highest valid marks) (1 mark with example). Erroneous data is invalid data that should be rejected, for example 150 or a letter such as "x" (1 mark with example). The fourth mark is for clear, correct definitions overall. A strong answer shows that good testing checks valid values, the exact limits, and invalid values, because errors often occur at the boundaries or with unexpected input.

CCEA-style (Unit 4)3 marksDescribe the difference between a syntax error and a logic error, and explain why a logic error can be harder to find.
Show worked answer →

A syntax error breaks the rules of the programming language, such as a misspelt keyword or missing bracket, so the program will not run or translate (1 mark).

A logic error means the program runs but produces the wrong result, because the logic of the algorithm is faulty, for example using the wrong operator (1 mark). A logic error is harder to find because the program does not report it: it runs without crashing, so the only sign is an incorrect output, and the developer must check the logic and test with data to locate it (1 mark). A strong answer contrasts a syntax error (stops the program running) with a logic error (runs but is wrong).

Related dot points

Sources & how we know this