Programming project: iteration II
Lesson details
Learning outcome
I can develop a program and apply testing techniques to ensure that it works correctly.
Key learning points
- Completing an implementation ensures that all intended functionality is present.
- Testing checks that code behaves correctly and meets requirements.
Keywords
Test plan - a document that sets out the tests that will be carried out during testing
Test data - the input values used to check whether a program works correctly during testing and to see how it behaves in different situations
Common misconception
I finished the code and it runs, so I don’t need to test it.
Just because a program runs doesn’t mean it works correctly in all situations. Testing helps find hidden errors, especially with unusual or unexpected inputs that you might not think of.
Teacher tip
Introduce normal, boundary, and erroneous test data with real examples. Ask learners to predict outcomes before running tests.
Equipment
Pupils will need access to a device that can edit and run Python programs. Examples in this lesson use the RPF Code Editor https://oak.link/python-editor
Licence
Lesson video
Loading...
Prior knowledge starter quiz
6 Questions
Q1.What does 'robust' mean in programming?
Q2.What is exception handling used for?
Q3.What is decomposition in programming?
Q4.What is a pre-condition loop?
Q5.Correctly order these tasks in program development:
Q6.What ensures that a program catches errors and manages them to prevent crashes?
Assessment exit quiz
6 Questions
Q1.Why is it important to test a program after completing the code?
Q2.What does a test plan help you do?
Q3.Match the terms to their definitions:
a document that outlines the tests to be carried out
input values used during testing
typical or expected inputs
inputs at the limits of acceptable values
invalid or unexpected inputs
Q4.Enter a valid example of normal data for a program that accepts numbers between 1 and 3 (inclusive).
Q5.Enter a valid example of boundary data for a program that accepts numbers between 1 and 10 (inclusive).
Q6.Why is it important to test a program even if it runs?
To help you plan your 10 computer science lesson on: Programming project: iteration II, download all teaching resources for free and adapt to suit your pupils' needs...
To help you plan your 10 computer science lesson on: Programming project: iteration II, 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 Programming: iteration unit, dive into the full secondary computer science curriculum, or learn more about lesson planning.