Software Testing-sample-solved
Software Testing-sample-solved
Semester
Course Title
: Fifth
: Software Testing
22518
Time: 3 Hrs.
Marks : 70
Instructions:
(1) All questions are compulsory.
(2) Illustrate your answers with sketches wherever necessary.
(3) Figures to the right indicate full marks.
(4) Assume suitable data if necessary.
(5) Preferably, write the answers in sequential order.
1
Penetration Testing (Pen Test): It's like hiring someone to try breaking into
your system, just like a hacker would. This helps you find weaknesses before real
hackers do.
Vulnerability Scanning: This is when you use a tool to check your system for
any known security issues, like old software or weak settings that could be
dangerous.
2
a bug refers to any fault, flaw, or defect in the software that can lead to malfunctions
or unexpected behavior. Bugs can manifest in various forms, such as incorrect
calculations, system crashes, user interface issues, or incorrect outputs.
Failure is when something doesn't work as expected. In the context of software testing,
a failure occurs when the software does not perform as intended
An error is like when something goes wrong or doesn't work properly. In software
testing, an error happens when there is a mistake in the software that causes it to
behave unexpectedly or incorrectly.
A defect is like a problem or a flaw in something, such as software, that causes it to not
work correctly or produce wrong results.
3
Q.2) Attempt any THREE of the following. 12 Marks
a) Describe the roles and responsibilities of a Test Leader.
b) Differentiate between Drivers and Stub (any four points).
A driver is a simplified
A stub is a basic implementation
version of the dependent
of the missing component that
component that enables
simulates its behavior to allow
the testing of the
testing of the component that
component being
depends on it.
developed.
4
2. Test Strategy: Describes the overall approach to testing, including
methodologies (e.g., manual or automated testing) and types of testing to be
performed (e.g., functional, regression, performance).
3. Test Schedule: A timeline that specifies when testing activities will take
place, including milestones and deadlines.
4. Test Deliverables: Lists the expected outputs from the testing process, such
as test cases, test scripts, defect reports, and final test summary reports.
5. Risk Assessment: Identifies potential risks that could affect testing
and outlines strategies for mitigating those risks.
6. Setting up criteria for testing: There must be clear entry and exit criteria for
different phases of testing. The test strategies for the various features and combinations
determined how these features and combinations would be tested.
5
feature or functionality of an application works correctly. It serves as a
guideline for testers to execute test cases consistently and thoroughly.
Key Elements of Test Case Specification:
1. Test case id
A unique identifier assigned to each test case for easy reference and tracking.
2. Test Description:
A brief description outlining the specific feature or functionality being tested.
3. Preconditions:
Conditions that must be met before executing the test (e.g., user must be logged in).
4. Input Data:
The specific data or values required to execute the test case (e.g., username,
password).
5. Test Steps:
A sequence of actions to be performed by the tester to execute the test (e.g., enter
username and password, click login).
6. Expected Result:
The outcome expected after performing the test steps.
7. Actual Result:
The outcome observed when the test case is executed.
8. Status:
Indicates whether the test case passed or failed based on the comparison between the
expected and actual results.
6
The defect management process in software testing is a structured
approach to identify, track, manage, and resolve defects (bugs) in a
software application. The primary goal is to ensure that the software
meets the required quality standards and functions as intended.
1. Defect identification – Defects are identified through various
testing activities, such as unit testing, integration testing, and user
acceptance testing.
2. Defect logging – Defects are logged in a defect tracking system,
along with details such as severity, status, reproducibility and
priority.
3. Defect triage – The triage process involves evaluating the defects
to determine their priority and the resources required to resolve
them.
4. Defect assignment – Defects are assigned to developers or testers
for resolution, based on their expertise and availability.
7
5. Defect Resolution and Verification: The defect is fixed and then
verified by the tester to ensure it’s correctly resolved without
introducing new issues.
6. Defect Closure and Reporting: After verification, the defect is
closed, and its status is updated in the tracking system. Regular
reports are generated to provide visibility into the overall defect
status and resolution progress.
d) State any four points of comparison between Static analysis tools and Dynamic
analysis tools.
1. Definition:
2. Purpose:
3. Examples:
o Static Testing Tools: Lint tools (check for syntax errors and coding
standards).
o Dynamic Testing Tools: Automated test scripts (execute test cases and
compare actual results with expected outcomes).
4. When Used:
8
o Static Testing Tools: During the development phase, before the software
is executed.
5. Benefits:
o Static Testing Tools: Can detect issues early in the development cycle.
o Dynamic Testing Tools: Can find issues that occur only during runtime.
6. Limitations:
9
3. **Big Bang Integration Testing**: In this type, all modules are integrated
simultaneously to test the entire system at once. This approach is quick but can
make it challenging to isolate and fix issues.
b) State the testing approaches that are considered during Client- Server Testing.
Client-Server Testing is a type of software testing model used to test the
interaction between two components: the client (which requests services) and the
server (which provides services). This type of testing ensures that the
communication, functionality, and performance of both the client and server are
working as expected.
Key Components:
1. Client: The front-end component that sends requests to the server for services
or data. This could be a web browser, a desktop application, or a mobile app.
2. Server: The back-end component that processes the requests from the client
and sends the appropriate responses.
10
Checking how fast the server responds to requests when multiple clients
are interacting with it.
c) Explain the Test Management with Test Infrastructure management and Test People
Management.
**Test Management**:
Test management involves organizing and controlling the testing process to
ensure the software meets quality standards. Key components include:
1. **Test Planning**: Defining the scope, strategy, resources, and timeline for
testing.
2. **Test Execution**: Running test cases and tracking the results to identify
defects.
3. **Defect Management**: Logging, prioritizing, and tracking defects to
ensure they are resolved.
4. **Test Reporting**: Summarizing testing progress and outcomes to
stakeholders.
Test Environment:
Description: The setup of hardware and software where tests are executed. This
includes servers, computers, and network configurations that mimic the
production environment.
Example: A staging server that simulates the live environment.
Test Data:
Description: Data used during testing to validate the functionality of the
software. This includes input data and expected results.
Example: User accounts and transaction records used to test login and payment
features.
Test Tools:
Description: Software applications that help design, execute, and manage tests.
This includes automation tools and defect tracking systems.
Example: Selenium for automated testing, JIRA for bug tracking.
11
### **Test People Management**:
Test people management focuses on effectively managing the human resources
involved in testing. Key aspects include:
1. **Role Assignment**: Clearly defining roles such as test leads, engineers,
and automation testers.
2. **Skill Development**: Providing training and learning opportunities to
enhance the team’s skills.
3. **Motivation and Communication**: Keeping the team motivated and
ensuring clear communication.
4. **Resource Allocation**: Assigning tasks based on team members'
expertise to optimize efficiency.
d) Enlist and describe criteria for Selecting Testing Tools with its description.
Project Requirements and Compatibility:
Description: The testing tool must align with the specific needs of the
project, such as the type of application (web, mobile, desktop) and the
technologies used (programming languages, frameworks, etc.).
Example: If you're testing a web application built with Angular, you would
choose a tool like Selenium, which supports automated testing of web apps
across different browsers.
**Budget**:
Consider the cost of the testing tool and whether it fits within the project's budget
constraints. Some tools may have licensing fees, while others are open source. It's
12
crucial to balance the cost with the tool's capabilities and the project's
requirements.
Integration Capabilities**:
Check if the testing tool can seamlessly integrate with other tools and technologies
used in the project, such as bug tracking systems, continuous integration tools, or
test management platforms.
13
Q.5) Attempt any TWO of the following. 12 Marks
a) Design test cases for the data filed from Admission form of your institute
(Data filed are Name, SSC percentage, Adhar no, Address, mobile no)
b) With respect to GUI testing write the test cases for Amazon login form.
c) Elaborate the concept of Software Metrics? Describe Product and Process metrics
with suitable example.
Semester
Course Title
: Fifth
: Software Testing
22518
Time: 1 Hour
Marks : 20
Instructions:
(1) All questions are compulsory.
(2) Illustrate your answers with sketches wherever necessary.
(3) Figures to the right indicate full marks.
(4) Assume suitable data if necessary.
(5) Preferably, write the answers in sequential order.
14
b) Design any four boundary value test cases for textbox which accept numbers from
1999.
c) Define Static testing and Dynamic testing.
d) Describe the need of stub and driver in Unit testing?
e) Define Load testing and Stress testing.
f) Define Unit Testing?
Scheme- I
22518
Semester : Fifth
Course Title : Software Testing
Time: 1 Hour
Marks : 20
Instructions:
(1) All questions are compulsory.
(2) Illustrate your answers with sketches wherever necessary.
(3) Figures to the right indicate full marks.
(4) Assume suitable data if necessary.
(5) Preferably, write the answers in sequential order.
15
Q.1 Attempt any FOUR. 08
Marks a) Define Test Plan?
b) List basic steps of Fundamental test Process.
c) Enlist different types of defect classification.
d) State five general activities of defect prevention.
e) List the benefits of automation testing.
f) Define software matrix and measurement.
16