JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY HYDERABAD
JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY HYDERABAD MCA V SOFTWARE TESTING METHODOLOGIES Previous Question Paper (October/ November - 2020 - R15)
Answer any five questions. All questions carry equal marks.
Main
What is path testing? With an example explain the constraints and consequences of path testing.
Answer
Path testing is a structural testing technique that aims to execute all possible paths through a program's control flow graph (CFG) at least once. It identifies the sequence of statements from the entry point to the exit point, ensuring that every logical branch is covered.
Constraints: The primary constraint is the path explosion problem. In programs with loops or complex conditional logic, the number of possible paths grows exponentially, making it computationally infeasible to test every path. Additionally, some paths may be infeasible, meaning no set of input data can trigger the execution of that specific sequence.
Consequences: While path testing provides high confidence in code correctness, it is resource-intensive. If only a subset of paths is tested, critical bugs in untested paths may remain undetected. Furthermore, it focuses on the internal structure rather than requirements, potentially missing missing functionality.
Explain about any five types of structural bugs.
Answer
Structural bugs are defects related to the implementation logic and control flow of the software. Five common types include:
- Dead Code: Segments of code that can never be executed under any input condition, often resulting from redundant logic or unreachable branches.
- Infinite Loops: Loops that lack a proper exit condition, causing the program to hang and consume system resources indefinitely.
- Off-by-one Errors: Logical errors in loop boundaries or array indexing, where a loop executes one time too many or too few (e.g., using i <= ninstead ofi < n).
- Uninitialized Variables: Accessing or using variables before they have been assigned a valid value, which leads to unpredictable behavior or runtime exceptions.
- Missing Path/Branch Errors: Occur when a programmer fails to account for a specific logical condition (e.g., an empty list or a null input), causing the control flow to deviate from the intended path.
List and explain different transaction flow testing strategies.
Answer
Sign in to view the complete answer paper.
Differentiate between static and dynamic program slicing.
Answer
Sign in to view the complete answer paper.
What is the purpose of domain testing? What are its applications? Discuss.
Answer
Sign in to view the complete answer paper.
Discuss about flow anomaly detection.
Answer
Sign in to view the complete answer paper.
What is the procedure for specification validation using KV charts? Illustrate.
Answer
Sign in to view the complete answer paper.
With examples, explain KV charts for two variables and three variables.
Answer
Sign in to view the complete answer paper.
What are the applications of node reduction algorithm? Discuss.
Answer
Sign in to view the complete answer paper.
Write short notes on JMeter Tool and its benefits.
Answer
Sign in to view the complete answer paper.
Explain about traversal marker form of path instrumentation.
Answer
Sign in to view the complete answer paper.
Illustrate about various flow graph elements with their notations.
Answer
Sign in to view the complete answer paper.
What are the applications of data flow testing?
Answer
Sign in to view the complete answer paper.
How data flow testing is useful in fulfilling the gaps in path testing? Explain.
Answer
Sign in to view the complete answer paper.
State Huang’s theorem and explain its implementation details.
Answer
Sign in to view the complete answer paper.
What are the applications of paths, path products and regular expressions? Explain.
Answer
Sign in to view the complete answer paper.