Software testing fundamentals

    CITY & GUILDS LIMITED
    Vocational

    Software testing fundamentals cover the core principles of testing, including methodologies, test creation, bug management, and automation. Learners will understand how to plan, execute, and manage testing projects effectively.

    8
    Learning Outcomes
    24
    Assessment Guidance
    24
    Key Skills
    8
    Key Terms
    39
    Assessment Criteria

    Assessment criteria

    City & Guilds Level 2 Diploma in ICT Systems and Principles for IT Professionals
    City & Guilds Level 2 Diploma in ICT Professional Competence
    City & Guilds Level 3 Diploma in ICT Systems Support
    City & Guilds Level 2 Certificate in ICT Systems Support
    City & Guilds Level 3 Certificate in ICT Systems and Principles
    City & Guilds Level 3 Diploma in ICT Systems and Principles for IT Professionals
    City & Guilds Level 2 Diploma in ICT Systems Support
    City & Guilds Level 3 Diploma in ICT Professional Competence

    Quick Revision Summary (Key Takeaway)

    The City & Guilds Level 2 Diploma in ICT Systems Support covers essential IT support skills, including hardware, software, networking, and customer service. This qualification prepares students for roles as IT support technicians, focusing on installing, configuring, and troubleshooting computer systems and providing effective user support.

    Topic Overview

    The City & Guilds Level 2 Diploma in ICT Systems Support is a vocational qualification designed to equip learners with the practical skills needed to work in IT support roles. It covers a broad range of topics including computer hardware, software installation, networking fundamentals, and customer service. The qualification emphasizes hands-on experience, preparing students for real-world troubleshooting and support scenarios.

    This diploma is structured around core units that build a solid foundation in ICT. Students learn to assemble and maintain computer systems, install and configure operating systems, and set up small networks. Additionally, they develop essential communication skills to effectively support users, which is critical in any IT support role. The qualification is recognized by employers and provides a pathway to further study, such as an advanced apprenticeship or a Level 3 qualification.

    In the wider context of computer science, this qualification focuses on the applied aspects of technology rather than theoretical programming. It bridges the gap between basic computer literacy and professional IT support, making it ideal for those who enjoy problem-solving and working with people. The skills gained are directly transferable to roles such as IT helpdesk technician, desktop support analyst, or network support assistant.

    Key Concepts

    Core ideas you must understand for this topic

    • Hardware components: CPU, RAM, storage devices, motherboard, PSU, and their functions.
    • Software installation and configuration: operating systems, drivers, and application software.
    • Networking basics: IP addressing, DNS, DHCP, and setting up a LAN.
    • Troubleshooting methodology: systematic approach to diagnosing and resolving issues.
    • Customer service: effective communication, ticketing systems, and user support.

    Learning Objectives

    What you need to know and understand

    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software

    Assessment Criteria

    Key criteria assessors look for in your portfolio

    • Define key testing concepts like verification, validation, and regression testing.
    • Explain different testing methodologies (e.g., waterfall, agile) and their applications.
    • Describe the process of creating test cases and test scripts.
    • Outline steps for managing bugs, including tracking and prioritisation.
    • Identify benefits and challenges of test automation.
    • Define key testing concepts like verification and validation.
    • Explain different testing methodologies (e.g., agile, waterfall).
    • Create test cases and test scripts for given scenarios.
    • Manage bugs using a tracking system and prioritise fixes.
    • Explain the fundamentals of software testing, including verification and validation.
    • Describe different testing methodologies (e.g., waterfall, agile).
    • Create test cases and test scripts from requirements.
    • Manage a testing project, including planning and reporting.
    • Use bug tracking tools to manage defects.
    • Automate tests using appropriate tools.
    • Execute tests and document results.
    • Define key testing fundamentals and terminology.
    • Explain different testing methodologies.
    • Describe the process of creating and managing software tests.
    • Identify methods for bug tracking and automation.
    • Explain testing fundamentals like verification and validation.
    • Describe different testing methodologies (e.g., waterfall, agile).
    • Create test cases and test scripts.
    • Manage bugs using tracking tools.
    • Automate tests using appropriate tools.
    • Explain testing fundamentals and methodologies.
    • Create effective test cases and test plans.
    • Manage testing projects and track bugs.
    • Automate tests where appropriate.
    • Execute tests and report results.
    • Define software testing and its importance in the development lifecycle.
    • Explain different testing methodologies (e.g., waterfall, agile) and their appropriate use.
    • Create test plans and test cases from requirements.
    • Describe bug lifecycle and use of bug tracking tools.
    • Identify benefits and challenges of test automation.
    • Differentiate between verification and validation.
    • Describe black-box and white-box testing techniques.
    • Create test cases from requirements.
    • Use bug tracking tools to manage defects.

    Assessment Guidance

    Guidance for achieving higher grades

    • 💡Use real-world examples to illustrate testing concepts.
    • 💡Remember to mention both manual and automated testing approaches.
    • 💡Structure answers around the testing lifecycle: plan, design, execute, report.
    • 💡Use industry-standard terminology throughout.
    • 💡Practice with bug tracking tools like JIRA.
    • 💡Show understanding of both manual and automated testing.
    • 💡Understand the difference between black-box and white-box testing.
    • 💡Use a test management tool to organise your work.
    • 💡Always retest after fixes (regression testing).
    • 💡Use real-world scenarios to explain testing concepts.
    • 💡Be clear on the differences between methodologies.
    • 💡Highlight the importance of documentation.
    • 💡Learn the testing lifecycle and levels (unit, integration, system).
    • 💡Practice writing clear test cases.
    • 💡Understand the difference between manual and automated testing.
    • 💡Use a test management tool.
    • 💡Write clear, reproducible test steps.
    • 💡Incorporate both manual and automated testing.
    • 💡Use real-world examples to illustrate testing concepts.
    • 💡Practice writing test cases for simple scenarios.
    • 💡Understand the difference between manual and automated testing.
    • 💡Learn the V-model and Agile testing approaches.
    • 💡Practice writing test cases with clear expected results.
    • 💡Understand the defect lifecycle.
    • 💡Always use correct technical terminology in your answers, such as 'volatile memory' instead of 'temporary memory'.
    • 💡When answering troubleshooting questions, always show a logical sequence of steps, even if the question doesn't explicitly ask for it.
    • 💡Read the question carefully to identify the command word (e.g., 'explain', 'describe', 'justify') and tailor your response accordingly.

    Common Mistakes

    Common errors to avoid in your coursework

    • Confusing verification with validation.
    • Assuming all testing should be automated without considering cost-benefit.
    • Neglecting to document test cases properly.
    • Confusing verification with validation.
    • Writing test cases that are too vague or incomplete.
    • Ignoring the importance of regression testing.
    • Testing only happy paths and ignoring edge cases.
    • Poor bug report quality (missing steps, screenshots).
    • Not prioritising tests based on risk.
    • Confusing verification and validation.
    • Overlooking the importance of test planning.
    • Assuming automation replaces all manual testing.
    • Testing only happy paths and ignoring edge cases.
    • Poor bug report documentation.
    • Not prioritising tests effectively.
    • Testing only happy paths.
    • Poor bug reporting (lack of detail).
    • Not prioritising test cases.
    • Confusing verification with validation.
    • Assuming testing only occurs at the end of development.
    • Neglecting to document test cases properly.
    • Testing only happy paths.
    • Writing vague test steps.
    • Ignoring regression testing after fixes.
    • Misconception: 'RAM is the same as a hard drive.' Correction: RAM is volatile and temporary; storage is non-volatile and permanent.
    • Misconception: 'More cores always means faster performance.' Correction: Performance depends on many factors, including clock speed, software optimization, and thermal limits.
    • Misconception: 'Wi-Fi is always better than Ethernet.' Correction: Ethernet provides a more stable and faster connection, while Wi-Fi offers convenience but can suffer from interference.

    Revision Plan

    How to revise this topic in 1–2 weeks

    1. 1Week 1: Focus on hardware components and their functions. Create flashcards for each component and practice identifying them from images.
    2. 2Week 2: Study software installation and configuration. Practice installing a virtual machine and setting up an OS.
    3. 3Week 3: Learn networking fundamentals. Set up a small home network and configure IP settings.
    4. 4Week 4: Practice troubleshooting scenarios. Use past papers and simulate real-world issues.
    5. 5Week 5: Review customer service skills and practice writing clear support documentation.

    Exam Question Types

    How this topic typically appears in the exam

    • 📋Multiple-choice questions on hardware and software definitions.
    • 📋Short-answer questions requiring explanations of concepts like RAM vs storage.
    • 📋Scenario-based questions where you must troubleshoot a given problem.
    • 📋Practical tasks (in some assessments) where you demonstrate installation or configuration skills.

    Command Word Expectations (CITY & GUILDS LIMITED)

    What examiners look for when using specific command words in this specification

    Explain

    Provide a detailed account of a concept, including reasons and causes. For example, 'Explain the difference between RAM and storage' requires you to describe both and contrast them.

    Describe

    Give a detailed account of a process or procedure. For example, 'Describe how to set up a small network' requires step-by-step instructions.

    Justify

    Provide reasons and evidence to support a choice or decision. For example, 'Justify the use of an SSD over an HDD' requires you to give advantages and reasons.

    How Students Lose Marks (Examiner Pitfalls)

    Common mark loss traps and how to write 100% full-mark answers

    Pitfall: Students often confuse the roles of RAM and storage, leading to incorrect answers about memory upgrades.
    ❌ Weak Answer (Loses Marks):RAM is the same as a hard drive because both store data.
    ✅ 100% Model Answer (Full Marks):RAM (Random Access Memory) is volatile memory that temporarily stores data and instructions currently in use, allowing the CPU to access them quickly. Storage (e.g., HDD/SSD) is non-volatile, retaining data permanently even when power is off. Upgrading RAM improves multitasking and system responsiveness, while upgrading storage increases capacity for files and programs.
    Examiner Tip: Always distinguish between volatile and non-volatile memory. Use examples like 'RAM loses data when the computer turns off, but a hard drive does not.'
    Pitfall: In troubleshooting questions, students often jump to a solution without following a logical process, losing marks for method.
    ❌ Weak Answer (Loses Marks):I would just reinstall the operating system.
    ✅ 100% Model Answer (Full Marks):First, I would gather information from the user about the issue and reproduce the problem. Then, I would identify possible causes (e.g., software conflict, hardware failure, user error). Next, I would test the most likely cause, such as checking device drivers or running diagnostic tools. After identifying the root cause, I would implement a solution, such as updating a driver or replacing faulty hardware. Finally, I would verify the fix and document the process.
    Examiner Tip: Always structure troubleshooting answers using a systematic approach: identify, analyze, fix, and verify. This shows the examiner you can work methodically.

    Step-by-Step Worked Solutions

    Detailed solution breakdown for typical exam problems

    Question: A client reports that their computer is running slowly. They have 4GB of RAM and a 500GB hard drive. Explain two possible hardware upgrades to improve performance and justify each.

    1. 1.Step 1: Identify the symptoms: slow performance could be due to insufficient RAM or slow storage.
    2. 2.Step 2: Suggest upgrading RAM from 4GB to 8GB or 16GB to allow more programs to run simultaneously without swapping to disk.
    3. 3.Step 3: Suggest replacing the HDD with an SSD to reduce boot and load times due to faster read/write speeds.
    4. 4.Step 4: Justify each upgrade: RAM upgrade reduces page file usage; SSD upgrade eliminates mechanical delays.
    Final Answer: Upgrade RAM to at least 8GB to improve multitasking, and replace the HDD with an SSD for faster data access and boot times.

    Question: A user cannot connect to the internet. Describe a step-by-step troubleshooting process you would follow, including at least three checks.

    1. 1.Step 1: Check physical connections: ensure Ethernet cable is plugged in or Wi-Fi is enabled.
    2. 2.Step 2: Verify network settings: check IP configuration using ipconfig (Windows) to see if the PC has a valid IP address.
    3. 3.Step 3: Test connectivity: ping a known address like 8.8.8.8 to see if the network is reachable.
    4. 4.Step 4: Check router/modem: restart the router and check indicator lights.
    5. 5.Step 5: If all else fails, contact ISP or check for service outages.
    Final Answer: Follow a logical sequence: physical checks, IP configuration, ping test, router restart, and ISP contact.

    Active Recall Memory Test

    Test your memory before revealing the key facts

    Frequently Asked Questions

    Common questions students ask about this topic

    Pass / Merit / Distinction Evidence Checklist

    How your portfolio evidence is graded for CITY & GUILDS LIMITED Software testing fundamentals

    Every vocational unit is marked against named criteria rather than an exam percentage. Your tutor's brief lists the exact codes for this unit — here is what each band is asking you to do.

    Pass (P)

    Demonstrate baseline knowledge, accurate terminology, and core practical application.

    Merit (M)

    Provide detailed analysis, structured explanations, and clear workplace reasoning.

    Distinction (D)

    Deliver thorough evaluation, original problem solving, and fully justified recommendations.

    Before You Start

    Prior knowledge that will help with this topic

    • Basic understanding of computer hardware components.
    • Familiarity with operating systems like Windows or Linux.
    • Basic knowledge of networking concepts such as IP addresses and routers.

    Coursework AI Review

    Paste your assignment brief and check your draft against its P/M/D criteria

    Key Terminology

    Essential terms to know

    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software
    • Know what are the testing fundamentals, Know what is meant by testing methodology, Know how to create software tests, Know how to manage software testing projects, Know how to manage bugs, Know how to automate software testing, Be able to test software

    Ready to learn?

    AI-powered learning tailored to this unit