0% found this document useful (0 votes)
6 views18 pages

Software Testing Slides

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

Software Testing Slides

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

Implementation Part 1

Software Testing Techniques


Learning Objectives

 Understand an overview of key software testing techniques

 Distinguish between different types of testing approaches

 Recognize when different testing techniques are appropriate

08/17/2025 IIMS College, Nepal 2


What is Software Testing?

 IEEE Standard 829-2008 Definition: "Software testing is the process


of analyzing a software item to detect the differences between existing
and required conditions (that is, defects/errors/bugs) and to evaluate the
features of the software item.“

 Essentially, software testing is the process of evaluating and verifying


that a software application or system meets specified requirements and
functions correctly.

08/17/2025 IIMS College, Nepal 3


Key Objectives

 Find defects and bugs before production/before users

 Verify functionality meets requirements

 Ensure software quality and reliability

 Validate user experience and performance

 Reduce risks and costs of software failures

08/17/2025 IIMS College, Nepal 4


Testing Principles

 Testing shows the presence of  Testing is context dependent: The


defects: Testing can demonstrate that approach to testing should be tailored to
defects exist, but it cannot definitively the specific context of the software,
prove that a system is completely free of including its purpose, functionality, and
errors. target users

 Exhaustive testing is impossible: It is  Defects cluster together: A small


not feasible to test every possible number of modules often contain the
combination of inputs, conditions, and majority of defects.
outputs in a software application.

08/17/2025 IIMS College, Nepal 5


Types of Testing

Black Box Testing

 What: Testing without knowledge of


internal code structure

 Focus: Input-output behavior

 Techniques: Equivalence partitioning,


boundary value analysis

 Who: Testers, end users

08/17/2025 IIMS College, Nepal 6


Types of Testing

White Box Testing

 What: Testing with full knowledge of


internal code structure

 Focus: Code coverage, logic paths

 Techniques: Statement coverage, branch


coverage, path coverage

 Who: Developers, technical testers

08/17/2025 IIMS College, Nepal 7


Types of Testing

Gray Box Testing

 What: Combination of black box and white


box testing

 Focus: Limited internal knowledge with


external testing

 Use Cases: Integration testing,


penetration testing

08/17/2025 IIMS College, Nepal 8


Testing Levels

08/17/2025 IIMS College, Nepal 9


Testing Levels

Unit Testing Integration Testing

 Scope: Individual components or  Scope: Interfaces between integrated

modules components

 Performed by: Developers  Goal: Detect interface defects


between modules
 Tools: JUnit, NUnit, pytest
 Performed by: Testers
 Goal: Verify each unit works as

designed
08/17/2025 IIMS College, Nepal 10
Testing Levels

System Testing Acceptance Testing

 Scope: Complete integrated system  Scope: Business requirements

 Environment: Production-like test validation

environment  Types: User Acceptance Testing (UAT),

 Goal: Verify system meets specified Business Acceptance Testing (BAT)

requirements  Goal: Confirm system is ready for


deployment

08/17/2025 IIMS College, Nepal 11


Functional Testing

08/17/2025 IIMS College, Nepal 12


Functional Testing

 Validates that software functions  Tests specific functionality and


according to specified requirements features

 Input → Process → Output  Based on functional


validation requirements/specifications

 Business logic, user requirements,  Usually black-box testing method


feature correctness  Validates business rules and workflows
 "Does it work as expected?“

08/17/2025 IIMS College, Nepal 13


Non-Functional Testing

08/17/2025 IIMS College, Nepal 14


Non-Functional Testing Techniques

Performance Testing Security Testing

 Load Testing: Normal expected load  Authentication and Authorization

 Stress Testing: Beyond normal capacity Testing: User identity verification and
access control validation
 Volume Testing: Large amounts of data
 SQL Injection: Database vulnerability
 Spike Testing: Sudden load increases
testing
 Endurance Testing: Extended periods
 Cross-Site Scripting (XSS): Web
application security

08/17/2025 IIMS College, Nepal 15


Non-Functional Testing Techniques

Usability Testing

 User interface and experience


evaluation

 Navigation and workflow testing

 Accessibility compliance testing

 Mobile responsiveness testing

08/17/2025 IIMS College, Nepal 16


Modern Testing Approaches

DevOps and Continuous Testing

 Continuous Testing: Testing throughout development cycle

 CI/CD Integration: Automated testing in deployment pipeline

 Shift-Left Testing: Earlier testing in development cycle

 Test Automation: Automated execution of test cases

 Infrastructure as Code: Automated test environment setup

08/17/2025 IIMS College, Nepal 17


Test Automation

When to Automate Automation Tools and Frameworks


 Repetitive Tests: Regression, smoke  Web Testing: Selenium, Playwright,
tests Cypress
 Data-Driven Tests: Multiple input  API Testing: Postman, REST Assured,
combinations SoapUI
 Stable Features: Unlikely to change  Mobile Testing: Appium, Espresso
Frequently  Performance Testing: JMeter,
LoadRunner

08/17/2025 IIMS College, Nepal 18

You might also like