JNTU
JNTU MCA 2017 SOFTWARE TESTING METHODOLOGIES Previous Question Paper (August 2017 - R09)
Answer any five questions
All questions carry equal marks
Main
Discuss about path predicates and achievable paths. And also discuss about path instrumentation.
Answer
Path Predicates are the set of boolean conditions that must be satisfied for a specific path through a program to be traversed. Each decision point (such as an if-statement or loop condition) along a path imposes a constraint on the input variables. A path is defined by the sequence of branches taken; the path predicate is the logical conjunction of all individual branch predicates along that path. If the path predicate is satisfiable, there exists at least one set of input data that will cause that path to be executed.
Achievable Paths are paths for which the path predicate is consistent and satisfiable. A path is considered unachievable if the path predicate is a contradiction (e.g., x > 5 AND x < 2), meaning no input data can satisfy the conditions required to traverse that specific sequence of branches. Identifying unachievable paths is crucial in software testing because they represent dead code or unreachable logic that cannot be exercised during testing, regardless of the input.
Path Instrumentation is a technique used to monitor and verify the execution of paths during testing. It involves inserting additional code (probes or counters) into the source program to track which branches or paths are taken during execution. Key aspects include:
- Probe Insertion: Strategic placement of logging statements or flags at entry and exit points of basic blocks or decision nodes.
- Data Collection: Capturing the sequence of executed nodes to reconstruct the actual path taken by the program under test.
- Verification: Comparing the actual execution path against the expected path to validate program logic and ensure test coverage requirements are met.
- Overhead Management: Minimizing the performance impact of instrumentation while ensuring sufficient data is collected to identify path-related defects.
Write a model for testing.
Answer
A testing model represents the systematic process of verifying software quality. The most common model is the V-Model, which illustrates the relationship between each phase of the development life cycle and its corresponding phase of testing.
- Requirements Analysis: Testing begins with the creation of the Acceptance Test Plan.
- System Design: The System Test Plan is developed to verify the entire integrated system.
- Architecture Design: The Integration Test Plan is created to check the interfaces between modules.
- Module Design: The Unit Test Plan is prepared to test individual components.
- Execution: Testing is performed in reverse order, starting from unit testing and moving up to acceptance testing, ensuring that defects are identified at the earliest possible stage.
Discuss briefly about dataflow testing.
Answer
Sign in to view the complete answer paper.
Explain in detail the transaction flow testing techniques.
Answer
Sign in to view the complete answer paper.
Explain path reduction procedure.
Answer
Sign in to view the complete answer paper.
Discuss about regular expressions.
Answer
Sign in to view the complete answer paper.
Discuss the significance of domain testing.
Answer
Sign in to view the complete answer paper.
Explain about flow anomaly detection.
Answer
Sign in to view the complete answer paper.
Explain state graphs and their uses.
Answer
Sign in to view the complete answer paper.
Discuss in detail about state testing.
Answer
Sign in to view the complete answer paper.
Explain KV charts with suitable examples.
Answer
Sign in to view the complete answer paper.
Write brief notes JMeter.
Answer
Sign in to view the complete answer paper.
Write short notes on:
Node reduction algorithm
Answer
Sign in to view the complete answer paper.
Testability tips
Answer
Sign in to view the complete answer paper.
Matrix of graph.
Answer
Sign in to view the complete answer paper.