JNTU

JNTU B.Tech III SOFTWARE TESTING METHODOLOGIES Previous Question Paper (November/December - 2020 - R16)

B.Tech | III | II | R16 | November/December - 2020

Answer PaperPaper Code: 136FYMaximum Marks: 75Time: 2 hours

Answer any five questions. All questions carry equal marks.

Main

1

Explain various Dichotomies in Software Testing.

15 marks

Answer

In software testing, dichotomies represent pairs of opposing concepts or strategies that help testers categorize testing activities and understand the trade-offs involved in the testing process. The primary dichotomies are:

  • Testing vs. Debugging: Testing is the process of executing a program with the intent of finding errors, whereas debugging is the diagnostic process of locating, analyzing, and correcting the root cause of those errors.
  • Function vs. Structure: Functional testing (Black-box) focuses on verifying that the software performs its intended functions according to requirements without regard to internal code. Structural testing (White-box) examines the internal logic, control flow, and data structures of the code.
  • Random vs. Partition Testing: Random testing involves selecting test cases from the input domain based on probability distributions. Partition testing involves dividing the input domain into equivalence classes and selecting representative test cases from each to ensure comprehensive coverage.
  • Positive vs. Negative Testing: Positive testing verifies that the system performs as expected under normal, valid conditions. Negative testing attempts to break the system by providing invalid, unexpected, or boundary inputs to ensure robust error handling.
  • Static vs. Dynamic Testing: Static testing involves reviewing or analyzing code, requirements, and design documents without executing the software. Dynamic testing requires the actual execution of the code to observe its behavior and output.
  • Manual vs. Automated Testing: Manual testing relies on human testers to execute test cases without automation tools, which is useful for exploratory testing. Automated testing uses scripts and tools to execute repetitive tests, increasing efficiency and consistency in regression testing.
  • Verification vs. Validation: Verification ensures the product is built correctly according to specifications (Are we building the product right?). Validation ensures the product meets the user's actual needs and expectations (Are we building the right product?).
2

Define Transaction and discuss Transaction flow testing with an example.

15 marks

Answer

A Transaction is a unit of work seen from a system user's perspective. It represents an operation that begins with an input or a request and ends with an output or a completion signal, typically involving a sequence of operations, database updates, or state changes within a system.

Transaction flow testing is a black-box testing technique used to verify the functional requirements of a system by tracing the path of a transaction through the system's components. It focuses on the validity of the sequence of states and transitions triggered by specific inputs.

The process involves identifying all possible transaction paths, including both successful paths and error-handling paths. The key steps include:

  1. Identify all transactions and their associated inputs/outputs.
  2. Represent the system as a directed graph where nodes represent states and edges represent the transitions between them.
  3. Define the paths through the graph that represent valid transaction sequences.
  4. Design test cases to cover these paths, ensuring that every transition is exercised and that the system correctly handles invalid sequences or unexpected inputs.

For example, consider an ATM Withdrawal Transaction:

Start → Insert Card → Validate PIN → Enter Amount → Check Balance → Dispense Cash → Update Account → Print Receipt → End

In this flow, transaction testing would verify:

  • The successful path where the PIN is valid and funds are sufficient.
  • Negative paths, such as entering an incorrect PIN (leading to a retry or lockout) or requesting an amount exceeding the balance (leading to a rejection message).
  • System recovery paths, such as what happens if the network connection drops during the 'Update Account' step.

By testing these flows, testers ensure that the system maintains data integrity and follows the intended business logic under all conditions.

3

Write short notes on the following:

15 marks
a

Linear domain boundaries

5 marks

Answer

Sign in to view the complete answer paper.

b

Non linear domain boundaries

5 marks

Answer

Sign in to view the complete answer paper.

c

Complete domain boundaries.

5 marks

Answer

Sign in to view the complete answer paper.

4

Reduce the following functions using K-Maps and explain k-map use in logic based testing:

F(A,B,C,D) = Σ(4,5,6,7,8,12,13)+d(1,15)
15 marks

Answer

Sign in to view the complete answer paper.

5

Describe the procedure for converting state graphs and state tables into test cases.

15 marks

Answer

Sign in to view the complete answer paper.

615 marks
a

Explain the consequences of bugs in detail.

7 marks

Answer

Sign in to view the complete answer paper.

b

Write various graphical notations used in Flow graph.

8 marks

Answer

Sign in to view the complete answer paper.

715 marks
a

Illustrate the differences between Control Flow and Transaction flow.

7 marks

Answer

Sign in to view the complete answer paper.

b

Explain the terms slicing, dicing, data flow and debugging with reference to testing.

8 marks

Answer

Sign in to view the complete answer paper.

8

Write about domain closure and domain dimensionality.

15 marks

Answer

Sign in to view the complete answer paper.

About this paper

This page contains the question paper of SOFTWARE TESTING METHODOLOGIES from JNTU for B.Tech CE III II, November/December - 2020, R16.

For the solved question paper with answers, switch to the Answer Paper tab.

Other papers in SOFTWARE TESTING METHODOLOGIES

Loading Question Papers

Fetching data from database...