Difficulty: Easy
Correct Answer: Boundary value analysis
Explanation:
Introduction / Context:
Functional testing focuses on verifying that the system behaves according to specified functional requirements, typically by providing inputs and checking outputs. Within functional testing, several test design techniques are used to select effective test cases. Boundary value analysis is one such technique, especially useful where inputs or outputs fall within numeric ranges. This question asks which option represents a functional test design technique of this kind, as opposed to non functional testing such as security, performance, or usability.
Given Data / Assumptions:
- Security testing evaluates how well the system protects data and resists unauthorised access, which is mainly non functional.
- Performance testing measures response time, throughput, and resource usage under load, also non functional.
- Boundary value analysis is a structured method for selecting test cases at the edges of input or output ranges.
- Usability testing focuses on user experience aspects such as ease of use and satisfaction.
Concept / Approach:
Functional test design techniques like equivalence partitioning and boundary value analysis use the specification of input ranges and conditions to derive effective test cases. Boundary value analysis specifically targets values at, just below, and just above the boundaries of valid partitions because defects often occur at these edges. Security, performance, and usability testing primarily focus on quality attributes rather than specific functional input output behaviour and are categorised as non functional testing. Therefore, among the listed options, boundary value analysis is the functional testing technique.
Step-by-Step Solution:
1. Identify which options are clearly non functional: security testing deals with protection and risk; performance testing deals with speed and scalability; usability testing deals with user interaction quality.
2. None of these three describe a specific method for selecting input values based on functional ranges or partitioning.
3. Boundary value analysis, on the other hand, explicitly refers to a method of choosing test cases at the boundaries of input or output domains.
4. For example, if an input field accepts values from 1 to 100, boundary value analysis suggests testing values such as 0, 1, 2, 99, 100, and 101.
5. This is a classic functional black box testing technique, making boundary value analysis the correct choice.
Verification / Alternative check:
Testing syllabi and textbooks list boundary value analysis under black box functional testing. They explain that many defects cluster around boundary values, so focusing on these can uncover errors more efficiently than random testing. Security, performance, and usability are usually grouped under non functional testing and treated in separate chapters or sections. This separation supports the classification of boundary value analysis as a functional test design technique.
Why Other Options Are Wrong:
Option A, security testing, examines vulnerabilities, authentication, authorisation, and data protection, which are important but not functional test design techniques based on input ranges. Option B, performance testing, concerns metrics such as response time and throughput under load, again not a boundary based functional method. Option D, usability testing, evaluates the user interface and user satisfaction. None of these are the specific boundary focused functional technique described in the question. Only option C matches that description.
Common Pitfalls:
Learners sometimes mix functional and non functional test types, assuming that any testing of behaviour is functional. Another pitfall is knowing the names of techniques without remembering their purpose. Boundary value analysis is often taught alongside equivalence partitioning, and both rely on understanding the specified functional range of inputs. Recognising these techniques as functional helps in selecting the right approach when designing test cases from requirements or user stories.
Final Answer:
The functional testing technique that designs cases based on input ranges and boundary behaviour is Boundary value analysis.
Discussion & Comments