0% found this document useful (0 votes)
8 views

Manual Testing Tutorial - 3 to 4

Uploaded by

kriszpm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Manual Testing Tutorial - 3 to 4

Uploaded by

kriszpm
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

Manual Testing Tutorial

Chapter 3: Software Testing Life Cycle (STLC)

3.1 What is STLC?

The Software Testing Life Cycle (STLC) is a systematic process that defines testing activities to be performed during
each stage of software development. It ensures a thorough evaluation of the product's functionality, performance, and
reliability.

3.2 Phases of STLC

1. Requirement Analysis

o Purpose: Understand what needs to be tested.

o Activities:

 Analyze requirements.

 Identify testable features.

 Check for testability of requirements.

o Deliverables: Requirements Traceability Matrix (RTM).

2. Test Planning

o Purpose: Plan the testing strategy and resources.

o Activities:

 Create a test plan.

 Estimate testing effort.

 Identify tools, resources, and timelines.

o Deliverables: Test Plan Document.

3. Test Case Design

o Purpose: Create detailed test cases.

o Activities:

 Write test cases based on requirements.

 Review and optimize test cases.

o Deliverables: Test Cases and Test Data.

4. Environment Setup

o Purpose: Prepare the test environment.

o Activities:
 Set up hardware, software, and network configurations.

 Verify the test environment with a smoke test.

o Deliverables: Test Environment Setup Checklist.

5. Test Execution

o Purpose: Execute the test cases.

o Activities:

 Execute test cases manually or using tools.

 Log defects and retest after fixes.

o Deliverables: Test Execution Reports and Defect Logs.

6. Test Closure

o Purpose: Conclude testing activities.

o Activities:

 Document lessons learned.

 Archive test artifacts.

 Prepare a test summary report.

o Deliverables: Test Closure Report.

3.3 Entry and Exit Criteria

 Entry Criteria:

o Test plan is approved.

o Test environment is ready.

o Test cases are prepared.

 Exit Criteria:

o All planned tests are executed.

o Defects are fixed and retested.

o Test summary report is created.

3.4 Diagrams: STLC Workflow

plaintext

Copy code

Requirement Analysis

Test Planning


Test Case Design

Environment Setup

Test Execution

Test Closure

3.5 Real-Time Example: Testing a Social Media Application

1. Requirement Analysis:

o Features: Post creation, liking posts, and messaging.

o Testable Requirements: Character limit for posts, notification on likes, etc.

2. Test Planning:

o Define scope: Testing the messaging feature in this release.

o Plan tools: Use JIRA for defect tracking.

3. Test Case Design:

o Test Case 1: Validate successful message delivery.

o Test Case 2: Verify error on exceeding the message length

4. Test Execution:

o Test Case 1: Validate successful message delivery.

 Steps:

 Log into the app with valid credentials.

 Navigate to the chat feature and select a contact.

 Send a text message "Hello."

 Verify the message appears in the conversation.

 Expected Result: The message "Hello" is displayed in the chat and marked as delivered.

o Test Case 2: Verify error on exceeding the message length.

 Steps:

 Log into the app.

 Navigate to the chat feature and select a contact.

 Attempt to send a message exceeding 200 characters.

 Verify an error message appears.

 Expected Result: The system displays "Message length exceeded" and prevents the message
from being sent.
5. Test Closure:

 Activities:

o Document all executed test cases.

o Log any defects, such as:

 Notification delay in message delivery.

 Error message for long messages appearing in an unexpected format.

o Prepare a Test Summary Report, including:

 Total test cases executed: 20.

 Passed test cases: 18.

 Failed test cases: 2.

 Defects logged: 2.

o Deliverables:

 Test Summary Report

 Lessons Learned Document:

 The chat feature needs optimization for long messages.

 Notifications should sync faster with server responses.

3.6 Key Deliverables of STLC

1. Requirements Traceability Matrix (RTM): Maps test cases to requirements.

2. Test Plan Document: Outlines testing strategy, scope, and schedules.

3. Test Cases: Detailed steps and expected results for test scenarios.

4. Defect Logs: Records of identified defects, severity, and status.

5. Test Summary Report: Overview of testing activities, results, and key metrics.

Chapter 4: Types of Testing

4.1 What Are the Types of Testing?

In software testing, various types of testing are used to validate different aspects of a software product. These can be
broadly categorized into Functional and Non-Functional testing, but there are also specialized types based on specific
goals, such as exploratory testing and regression testing.
4.2 Functional Testing

Functional testing validates the functionality of a software application by checking whether it behaves as expected.
These tests are usually based on requirements and specifications.

 Types of Functional Testing:

o Unit Testing: Tests individual components or functions of the software.

 Example: Testing a login function to verify the correct username and password handling.

o Integration Testing: Ensures that different modules or components of the software work together.

 Example: Testing the interaction between a payment gateway and the shopping cart in an e-
commerce application.

o System Testing: Tests the entire system as a whole to ensure it works as expected.

 Example: Testing a fully developed e-commerce website, including login, shopping, and
checkout functionality.

o Acceptance Testing: Verifies if the software meets the business requirements and is ready for
deployment.

 Example: Testing an online banking system to ensure it meets regulatory requirements and
user expectations.

4.3 Non-Functional Testing

Non-functional testing focuses on non-functional aspects of the software, such as performance, usability, and security.

 Types of Non-Functional Testing:

o Performance Testing: Assesses how well the software performs under load and stress.

 Example: Load testing an e-commerce website to see how many users it can handle
simultaneously.

o Usability Testing: Evaluates how user-friendly and intuitive the software is.

 Example: Testing the navigation and layout of a mobile app to ensure a seamless user
experience.

o Security Testing: Ensures that the software is secure from vulnerabilities and cyber-attacks.

 Example: Penetration testing an online banking application to check for security flaws.

o Compatibility Testing: Verifies that the software works across different environments, devices, and
browsers.

 Example: Testing a website on various browsers like Chrome, Firefox, and Safari to ensure
cross-browser compatibility.

4.4 Specialized Testing Types

These are testing types performed in specific scenarios or to uncover particular issues.

1. Exploratory Testing:

o The tester explores the application without predefined test cases to find potential issues.
o Example: Manually testing an e-commerce website's checkout process by trying different
combinations of payment methods and discounts.

2. Regression Testing:

o Ensures that new changes or updates do not break or negatively impact existing features.

o Example: After adding a new product page, testing the existing checkout and search functionalities to
make sure they still work properly.

3. Smoke Testing:

o A preliminary test to check whether the basic functions of the application work.

o Example: After a new build, testing if users can log in and access the main page of the application.

4. Sanity Testing:

o Focuses on verifying whether a specific bug has been fixed or if a small change works as expected.

o Example: After fixing a bug where a user couldn't add items to their cart, testing this specific
functionality.

5. Ad-hoc Testing:

o Unscripted testing performed to find unexpected defects without following any formal testing process.

o Example: Randomly clicking on different features of an app to see if any unexpected crashes occur.

4.5 Diagram: Types of Testing

Types of Testing

/ \

Functional Testing Non-Functional Testing

/ | | \ / | | \

Unit Integration System Acceptance | Performance Usability Security

4.6 Real-Time Examples of Functional Testing

1. Functional Testing of a Login Page:

o Scenario: A user attempts to log in using a valid username and password.

o Steps:

1. Enter valid credentials.

2. Click on "Login".

o Expected Result: The user should be directed to the homepage.

o Bug Example: Incorrect password handling could result in a login failure.

2. Functional Testing of a Shopping Cart:

o Scenario: A user adds items to the shopping cart.

o Steps:
1. Select a product and add it to the cart.

2. Go to the cart page and verify the product is listed.

o Expected Result: The correct product, quantity, and price should be displayed in the cart.

o Bug Example: The cart shows the wrong price or an empty cart after adding products.

4.7 Real-Time Examples of Non-Functional Testing

1. Performance Testing for a Web Application:

o Scenario: Test how the website performs under load.

o Steps:

1. Simulate multiple users accessing the website simultaneously.

o Expected Result: The website should respond to all users without crashing.

o Bug Example: The website becomes slow or crashes under heavy traffic.

2. Usability Testing for a Mobile App:

o Scenario: Test the ease of use and user-friendliness of an app.

o Steps:

1. Have users navigate through the app, completing common tasks.

o Expected Result: The app should be intuitive, with easy navigation and minimal friction.

o Bug Example: Users have difficulty finding the settings menu or navigating between screens.

4.8 Key Considerations in Testing Types

 Functional Testing is typically prioritized during the initial stages of development, while Non-Functional Testing
is done later to ensure overall performance.

 Specialized testing types like Exploratory and Ad-hoc are used for finding defects that are not easily identified
through standard testing procedures.

You might also like