- Year 11
- OCR
Testing and refining a programming project
I can test a programming project using a range of methods.
- Year 11
- OCR
Testing and refining a programming project
I can test a programming project using a range of methods.
These resources will be removed by end of Summer Term 2025.
Switch to our new teaching resources now - designed by teachers and leading subject experts, and tested in classrooms.
These resources were created for remote use during the pandemic and are not designed for classroom teaching.
Lesson details
Key learning points
- Testing is the process of checking that a program works correctly and meets all its requirements.
- To test a program thoroughly, a range of data should be used, including normal, boundary and invalid data.
- A good test plan includes clear tests with predicted outcomes.
- If the actual results don't match the expected results, the program is checked for errors in a process called debugging.
Keywords
Testing - the systematic process of checking that a program works as expected
Debugging - the process of finding and correcting errors in program code
Common misconception
A test plan should only include data that will cause a program to not work.
A test plan should contain a range of test data, including normal, erroneous and boundary.
To help you plan your year 11 computer science lesson on: Testing and refining a programming project, download all teaching resources for free and adapt to suit your pupils' needs...
To help you plan your year 11 computer science lesson on: Testing and refining a programming project, download all teaching resources for free and adapt to suit your pupils' needs.
The starter quiz will activate and check your pupils' prior knowledge, with versions available both with and without answers in PDF format.
We use learning cycles to break down learning into key concepts or ideas linked to the learning outcome. Each learning cycle features explanations with checks for understanding and practice tasks with feedback. All of this is found in our slide decks, ready for you to download and edit. The practice tasks are also available as printable worksheets and some lessons have additional materials with extra material you might need for teaching the lesson.
The assessment exit quiz will test your pupils' understanding of the key learning points.
Our video is a tool for planning, showing how other teachers might teach the lesson, offering helpful tips, modelled explanations and inspiration for your own delivery in the classroom. Plus, you can set it as homework or revision for pupils and keep their learning on track by sharing an online pupil version of this lesson.
Explore more key stage 4 computer science lessons from the Python programming project unit, dive into the full secondary computer science curriculum, or learn more about lesson planning.
Equipment
All pupils require access to devices that can edit and run Python programs. Starter code files are available to copy or use directly via the Raspberry Pi Code Editor.
Licence
Prior knowledge starter quiz
6 Questions
Q1.What is the main purpose of software testing?
Q2.Which type of testing involves checking how different sections of a program interact?
Q3.What does black box testing focus on?
Q4.What is the process of finding and correcting errors in code called?
Q5.Why is it important to use different types of data, such as erroneous, normal and boundary data, when testing?
Q6.Match the type of data to its description:
typical, expected input values
input values outside allowed range
values at the edge of allowed limits
a set of conditions used to check the program
Assessment exit quiz
6 Questions
Q1.Why is it important to use different types of data when testing?
Q2.Which statement about test plans is correct?
Q3.What type of test input checks the extreme limits of what a program should accept?
Q4.Match the term to its definition:
checking that a program works as expected
finding and correcting errors in code
typical, expected input values
input values that are invalid