Istqb Certified Tester Foundation Level CTFL · Free Practice Question Medium

Question 30

Which of the following best describes the key difference between black-box and white-box testing approaches?

  • A

    Black-box testing focuses on user interface design, while white-box testing examines internal code structure

  • B

    Black-box testing derives tests from system specifications, while white-box testing derives tests from the internal implementation

  • C

    Black-box testing is only used in agile methodologies, while white-box testing is used in traditional development

  • D

    Black-box testing requires programming knowledge, while white-box testing does not

Reveal correct answer

Correct answer: B

A.

This is not fully accurate. While black-box testing does focus on system behavior, it is not limited to just the user interface. It covers all aspects of the system's functionality based on the specifications. White-box testing does examine the internal code structure, but the difference is about testing based on implementation, not just the code itself.

B.

  • Black-box testing focuses on testing the system's behavior based on the system specifications without knowledge of its internal structure or code. The tests are derived from the requirements and documentation, aiming to verify that the system works as expected according to those specifications.

  • White-box testing focuses on the internal structure of the system. Tests are derived from the system's implementation, including the code, architecture, workflows, and data flows. The goal is to ensure that the internal workings of the system are functioning correctly and that all components are tested to an acceptable level.

C.

This is false. Both black-box and white-box testing can be applied in any development methodology, including agile, waterfall, or any other. The distinction is not about the methodology, but about the focus of the testing (behavior vs. internal structure).

D.

This is incorrect. White-box testing typically requires programming knowledge since it involves testing the system's internal implementation. On the other hand, black-box testing does not require programming knowledge because it focuses on verifying the system's behavior according to the specifications, not the internal code.

Discussion

Think the marked answer is wrong, or have a better explanation? Share it below — comments appear after review.

You must be logged in to post a comment.

Preparing For

Your Certification?

255+ certifications
Detailed explanations
Free PDF samples

Has All The Questions You Need