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

Manual Testing Tutorial - 3 to 4

Uploaded by

kriszpm
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Manual Testing Tutorial - 3 to 4

Uploaded by

kriszpm
Copyright
© © All Rights Reserved
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