Question 1
Which of the following structural graph coverage criteria subsumes All DU-Paths Coverage on a data flow graph?
Edge-pair coverage
Edge coverage
Prime path coverage
Node coverage

The IIT Madras BS Software Testing (Software Testing) Quiz 2 paper sat on 23 Nov 2025, in the September 2025 term: 20 questions for 100 marks in 120 minutes. Every question is below with its answer. Take it as a timed mock test to be marked, or read it through first.
Which of the following structural graph coverage criteria subsumes All DU-Paths Coverage on a data flow graph?
Edge-pair coverage
Edge coverage
Prime path coverage
Node coverage
Correct answer
Prime path coverage
Consider four partitions with blocks
,
,
, and
.What is the minimum number of tests required to satisfy Each Choice Coverage (ECC) criterion?
8
4
5
7
Correct answer
4
Consider the predicate
. Which of the following options represents
, i.e. the
conditions under which clause
determines
?
Correct answer
An organization is developing a mobile application for a food delivery service. One of the features specified is that the user should be able to track their order in real-time on the app. What kind of requirement does this represent?
User requirement
Business requirement
Regulatory requirement
Non-functional requirement
Correct answer
User requirement
Consider a system that categorizes job applicants based on their cumulative work experience according to the following categories:
• If work experience is between 0 to 1 year, the applicant is categorized as Entry-Level. • If work experience is between 2 to 3 years, the applicant is categorized as Junior.
• If work experience is between 4 to 5 years, the applicant is categorized as Mid-Level. • If work experience is 6 years or more, the applicant is categorized as Senior.
Assume that work experience is expressed in whole years. How many equivalence class partitions can be identified in this scenario?
3
5
4
6
Correct answer
5
Active Clause Coverage (ACC) is equivalent to which of the following classical coverage criteria for source code?
Branch coverage
Decision coverage
Modified condition decision coverage (MCDC)
Statement coverage
Correct answer
Modified condition decision coverage (MCDC)
Consider the following range for a product's warranty period.
.
Which of the following test inputs would satisfy Boundary Value Analysis (BVA) for the given partition?
Correct answer
Consider the following code segment for symbolic testing.
// Compute the sum of positive integers, return on any negative input.
int series(int a) {
int sum = a;
int i = 0;
while(true) {
r = sym_input();
if(r < 0) {
break;
}
sum = sum + r;
i++;
}
return sum;
}
Choose the appropriate path constraint (PC) for the while loop with a sequence of
true outcomes
followed by a false. Consider each
as a fresh symbolic value.
Correct answer
Consider the predicate
. Which of the following options are true?
The predicate is in CNF.
There are 2³ possible valuations for this predicate.
The predicate is in DNF.
There are 2⁶ possible valuations for this predicate.
Correct answers
The predicate is in CNF.
There are 2⁶ possible valuations for this predicate.
Consider the predicate
and its truth table given below.
Note that the blank cells represent the value
in the truth table.
Based on the above data ,answer the given subquestions.
Considering the row numbers (#) given in the truth table, which of the following is a CACC pair for
the clause
?
(2,5)
(2,6)
(1,5)
(1,8)
Correct answer
(1,5)
Consider the predicate
and its truth table given below.
Note that the blank cells represent the value
in the truth table.
Based on the above data ,answer the given subquestions.
Considering the row numbers (#) given in the truth table, which of the following is a RICC pair for
the clause
?
(1, 3) for
, no feasible pair for
(1, 4) for
, no feasible pair for
(2, 4) for
, no feasible pair for
(2, 6) for
, no feasible pair for
Correct answer
(2, 6) for
, no feasible pair for
Consider the control flow graph (CFG),
, where
• Set of vertices
• Set of edges
• Initial vertex
• Final vertex
Based on the above data, answer the given subquestions.
What is the cyclomatic complexity of
?
3
4
5
6
Correct answer
3
Consider the control flow graph (CFG),
, where
• Set of vertices
• Set of edges
• Initial vertex
• Final vertex
Based on the above data, answer the given subquestions.
How many test requirements are there for edge-pair coverage on
?
9
7
10
8
Correct answer
7
Consider the control flow graph (CFG),
, where
• Set of vertices
• Set of edges
• Initial vertex
• Final vertex
Based on the above data, answer the given subquestions.
What is the minimum number of test paths needed to achieve edge coverage on
.
1
2
3
4
Correct answer
2
Consider the following data flow graph and answer the subsequent questions.
How many test requirements are there to satisfy All-Defs Coverage for variable x?
3
1
2
4
Correct answer
2
Consider the following data flow graph and answer the subsequent questions.
How many test requirements are there to satisfy All-Uses Coverage for variable x?
5
6
7
4
Correct answer
6
Consider the following data flow graph and answer the subsequent questions.
Which of the following is not a def-clear path for variable x?
Correct answer
Consider that concolic testing technique (DART) is used to test the following code segment. int mean(int a, int b){
return (a + b)/2;
}
int square(int n) {
return n * n;
}
int process(int a, int b) {
int t1 = mean(a, b);
int t2 = square(t1) - (a * b)
if(t2 <= 0) { // LINE-1
abort(); // LINE-2
}
return t2;
}
Assume that
and
respresent the symbolic values for the variables a and b respectively, in the method process. Answer the subsequent questions.
Identify the path constraint that represents an equivalence class of input vectors containing all inputs that lead to the abort() call at LINE-2.
Correct answer
Consider that concolic testing technique (DART) is used to test the following code segment. int mean(int a, int b){
return (a + b)/2;
}
int square(int n) {
return n * n;
}
int process(int a, int b) {
int t1 = mean(a, b);
int t2 = square(t1) - (a * b)
if(t2 <= 0) { // LINE-1
abort(); // LINE-2
}
return t2;
}
Assume that
and
respresent the symbolic values for the variables a and b respectively, in the method process. Answer the subsequent questions.
Consider that DART generates a random input:
.
Which path constraint (PC) is generated for the next execution at LINE-1?
Hint: DART negates the path constraint in the current execution to get the path constraint for the next execution.
Correct answer
Consider that concolic testing technique (DART) is used to test the following code segment. int mean(int a, int b){
return (a + b)/2;
}
int square(int n) {
return n * n;
}
int process(int a, int b) {
int t1 = mean(a, b);
int t2 = square(t1) - (a * b)
if(t2 <= 0) { // LINE-1
abort(); // LINE-2
}
return t2;
}
Assume that
and
respresent the symbolic values for the variables a and b respectively, in the method process. Answer the subsequent questions.
Which of the following sets of concrete test inputs execute all instances of symbolic execution for the method process?
{a = 4, b = 8}, {a = 4, b = 6}
{a = 6, b = 4}, {a = 0, b = 0}
{a = 0, b = 8}, {a = 4, b = 0}
{a = -1, b = 1}, {a = 4, b = 4}
Correct answer
{a = 6, b = 4}, {a = 0, b = 0}