Previous year paper

(SEM VII) THEORY EXAMINATION 2022-23 SOFTWARE TESTING

General B.Tech 0 downloads

About this previous year paper

SECTION A (2 Marks Each)

 

(a) Goals of Software Testing

The main goals are to find defects, ensure software meets requirements, verify quality, reduce risk, and build confidence in the system.

 

(b) Error, Fault, and Failure

An error is a human mistake, a fault is a defect in the code, and a failure occurs when the software does not perform as expected.

 

(c) Functional vs Structural Testing

Functional testing checks what the system does, while structural testing checks how the system works internally using code structure.

 

(d) Functional System Testing

Functional system testing verifies that the complete system works according to functional requirements in a real-world environment.

 

(e) Limitations of Boundary Value Analysis and Equivalence Partitioning

These techniques may miss errors outside selected boundaries and do not test internal logic or complex conditions.

 

(f) Test Data Prioritization

It is the process of arranging test data so that high-risk and critical data are tested first.

 

(g) Alpha Testing vs Beta Testing

Alpha testing is performed by developers/testers in a controlled environment, while beta testing is done by real users in a real environment.

 

(h) Test Data Generation Tools

Examples include QuickCheck, Datatect, and Test Data Generator.

 

(i) Post-Deployment Testing

Testing performed after software release to ensure it works correctly in the live environment.

 

(j) Security Testing in Object-Oriented Testing

Security testing checks vulnerabilities like unauthorized access, data leakage, and object misuse in OO systems.

 

SECTION B (10 Marks Each – Attempt Any Three)

 

(a) Test Planning and Test Plan Structure

Test planning defines scope, objectives, resources, schedule, and risks of testing. A test plan includes introduction, test objectives, test items, features to be tested, test strategy, resources, schedule, deliverables, and risk management. It acts as a roadmap for testing activities.

 

(b) White Box Testing and Cyclomatic Complexity

White box testing focuses on internal code structure. Cyclomatic complexity measures the number of independent paths in a program and helps determine the minimum number of test cases required for complete path coverage.

 

(c) Data Flow Testing Criteria

Data flow testing checks the life cycle of variables. Criteria include all-definitions, all-uses, all-definition-use paths, and all-computational-use paths to detect anomalies in variable usage.

 

(d) Organizational Structure of Testing Teams

Testing teams may include test manager, test lead, test engineers, automation testers, and domain experts. In single-product companies, teams work closely with development for better coordination.

 

(e) Object-Oriented vs Procedural Testing

Object-oriented testing focuses on classes, objects, inheritance, and polymorphism, while procedural testing focuses on functions and procedures.

 

SECTION C (10 Marks Each)

 

Q3

(a) Debugging Goals and Policies

Debugging aims to locate and fix faults, while testing aims to find defects. Debugging policies define responsibility, prioritization, and procedures for fixing defects, ensuring efficient error removal.

 

(b) Test Case, Test Suite, and Test Oracle

A test case specifies input, execution conditions, and expected result. A test suite is a collection of test cases. A test oracle determines whether test output is correct.

 

Q4

(a) White Box Testing and Its Methods

White box testing examines code logic using methods like statement coverage, branch coverage, path coverage, and condition coverage.
Unlike black box testing, it requires programming knowledge and focuses on internal structure.

 

(b) Equivalence Partitioning vs Boundary Value Analysis

Equivalence partitioning divides inputs into valid and invalid classes, while boundary value analysis tests values at the edges. Boundary testing is more effective for detecting range errors.

 

Q5

(a) Regression Testing

Regression testing ensures that changes or fixes do not break existing functionality. It is applied in every development phase to maintain software stability.

 

(b) Test Data Reduction Techniques

Techniques include test case prioritization, test suite minimization, selection based on impact analysis, and automation tools.

 

Q6

(a) Factors for Selecting Test Automation Tools

Factors include cost, compatibility, ease of use, scripting support, reporting features, scalability, and tool support.

 

(b) Static and Dynamic Testing Tools

Static tools analyze code without execution, such as lint tools. Dynamic tools test software during execution, such as Selenium and JUnit.

 

Q7

(a) GUI Test Cases for Website Login Form

Test cases include valid login, invalid password, empty username field, and password masking check.

 

(b) Class Testing and OO Integration Testing

Class testing verifies individual classes. OO integration testing focuses on object interactions, inheritance, and message passing, unlike traditional integration testing.

TypePrevious year paper
SubjectGeneral
Board / courseB.Tech
FilePDF · 86.51 KB
Shared by SuGanta International

Added by the SuGanta team.