Courseiva
Fundamentals of Testing →mediumMultiple Choice

CTFL-v4 Fundamentals of Testing Practice Question

A developer fixates on unit testing, claiming that since all logic paths are covered, the system is free of bugs. As a tester, how do you best challenge this perspective based on ISTQB principles?

⚠ Common exam trap

Candidates often argue that high coverage proves the system is bug-free, failing to recognize the principle that testing can show the presence of defects but never their total absence.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Explain that testing can only demonstrate the presence of defects, not their absence.

Testing can show the presence of defects but cannot prove their absence. Even with 100% path coverage, the software might fail to meet user needs or miss requirements. This emphasizes that testing is context-dependent and requires a holistic view beyond mere code logic. The tester's role is to identify risks that exist outside the developer's narrow focus, ensuring the system functions reliably in the intended production environment.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Accept the code coverage metrics as sufficient proof of quality.

    Why it's wrong here

    Code coverage is a useful metric for identifying untested code, but it does not guarantee that the software is bug-free or fit for purpose. Relying solely on coverage ignores external dependencies, integration issues, and usability requirements, which are critical for delivering a high-quality product to the end user.

  • ✓

    Explain that testing can only demonstrate the presence of defects, not their absence.

    Why this is correct

    This fundamental principle highlights that testing proves the existence of bugs rather than validating the total absence of them. Even exhaustive testing cannot guarantee a system is 100% defect-free, as environmental factors and latent logic errors often manifest only during actual usage, regardless of how thorough initial testing was performed.

  • ✗

    Suggest replacing unit tests with comprehensive system integration tests.

    Why it's wrong here

    Unit testing and system integration testing serve different purposes in the test pyramid. Suggesting replacement is incorrect because both levels are essential. Unit tests verify low-level logic, while integration tests verify communication between modules. A balanced approach requires both to detect defects effectively at the most appropriate testing level.

  • ✗

    Advise the developer to perform manual exploratory testing instead.

    Why it's wrong here

    Exploratory testing is valuable but does not replace the necessity of automated unit tests for verifying logic. The solution is not to choose one over the other but to integrate both practices. Relying only on manual exploratory testing would lead to regressions when code changes, creating significant long-term maintenance overhead.

About these practice questions

This CTFL-v4 question is part of Courseiva's 144-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official ISTQB exam blueprint

This CTFL-v4 practice question is part of Courseiva's free ISTQB certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CTFL-v4 exam.