SlideShare una empresa de Scribd logo
1 de 11
Software Testing
By Fazal Wahab
What is Software Testing?
 Several definitions:
“Testing is the process of establishing confidence that a program or
system does what it is supposed to.” by Hetzel 1973
“Testing is the process of executing a program or system with the
intent of finding errors.” by Myers 1979
“Testing is any activity aimed at evaluating an attribute or capability
of a program or system and determining that it meets its required
results.”
by Hetzel 1983
What is Software Testing?
What is IEEE’s definition?
 One of very important software development phases
 A software process based on well-defined software quality
control and testing standards, testing methods, strategy, test
criteria, and tools.
 Engineers perform all types of software testing activities to
perform a software test process.
 The last quality checking point for software on its production
line
Testing Objectives
 The Major Objectives of Software Testing:
 Uncover as many as errors (or bugs) as possible in a given timeline.
 Demonstrate a given software product matching its requirement
specifications.
 Validate the quality of a software testing using the minimum cost and efforts.
 Generate high quality test cases, perform effective tests, and issue correct
and helpful problem reports.
 Major goals:
 uncover the errors (defects) in the software, including errors in:
- requirements from requirement analysis
- design documented in design specifications
- coding (implementation)
- system resources and system environment
- hardware problems and their interfaces to software
Who does Software Testing?
- Test manager
- manage and control a software test project
- supervise test engineers
- define and specify a test plan
- Software Test Engineers and Testers
- define test cases, write test specifications, run tests
- Independent Test Group
- Development Engineers
- Only perform unit tests and integration tests
- Quality Assurance Group and Engineers
- Perform system testing
- Define software testing standards and quality control process
Software Testing Scope
Software Testing
Process
Software Testing
Management
Configuration
Management
Software Problem
Management
Software Testing
Methods
Software Test
Criteria
Software Testing
Tools
Software Test
Models
Software Testing
Strategies
Software Testing Activities
 Test Planning
Define a software test plan by specifying:
- a test schedule for a test process and its activities, as well as assignments
- test requirements and items
- test strategy and supporting tools
- Test Design and Specification
- Conduct software design based on well-defined test generation methods.
- Specify test cases to achieve a targeted test coverage.
- Test Set up:
- Testing Tools and Environment Set-up
- Test Suite Set-up
- Test Operation and Execution
- Run test cases manually or automatically
Software Testing Activities
 Test Result Analysis and Reporting
Report software testing results and conduct test result analysis
- Problem Reporting
Report program errors using a systematic solution.
- Test Management and Measurement
Manage software testing activities, control testing schedule, measure
testing complexity and cost
- Test Automation
- Define and develop software test tools
- Adopt and use software test tools
- Write software test scripts and facility
- Test Configuration Management
- Manage and maintain different versions of software test suites, test
environment and tools, and documents for various product versions.
Verification and Validation
Software testing is one element of a broader topic that is often referred to as
===> Verification and Validation (V&V)
Verification --> refers to the set of activities that ensure that software correctly
implements a specific function.
Validation -> refers to a different set of activities that ensure that the software
that has been built is traceable to customer requirements.
Boehm [BOE81]:
Verification: “Are we building the product right?”
Validation: “Are we building the right product?”
The definition of V&V encompasses many of SQA activities, including
formal technical reviews, quality and configuration audits
performance monitoring, different types of software testing
feasibility study and simulation
Software Quality Factors
Functionality (exterior quality)
- Correctness, reliability, usability, and integrity
Engineering (interior quality)
- Efficiency, testability, documentation, structure
Adaptability (future qualities)
- Flexibility, reusability, maintainability
Software Testing Principles
• Principle #1: Complete testing is impossible.
• Principle #2: Software testing is not simple.
• Reasons:
• Quality testing requires testers to understand a system/product completely
• Quality testing needs adequate test set, and efficient testing methods
• A very tight schedule and lack of test tools.
• Principle #3: Testing is risk-based.
• Principle #4: Testing must be planned.
• Principle #5: Testing requires independence.
• Principle #6: Quality software testing depends on:
• Good understanding of software products and related domain application
• Cost-effective testing methodology, coverage, test methods, and tools.
• Good engineers with creativity, and solid software testing experience

Más contenido relacionado

La actualidad más candente

Test Management introduction
Test Management introductionTest Management introduction
Test Management introduction
Oana Feidi
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
Nishant Worah
 

La actualidad más candente (20)

Test plan
Test planTest plan
Test plan
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | Edureka
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
White box & black box testing
White box & black box testingWhite box & black box testing
White box & black box testing
 
Software development process basic
Software development process basicSoftware development process basic
Software development process basic
 
Software Testing Life Cycle – A Beginner’s Guide
Software Testing Life Cycle – A Beginner’s GuideSoftware Testing Life Cycle – A Beginner’s Guide
Software Testing Life Cycle – A Beginner’s Guide
 
CTFL Module 03
CTFL Module 03CTFL Module 03
CTFL Module 03
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Testing
TestingTesting
Testing
 
Manual testing
Manual testingManual testing
Manual testing
 
Test Management introduction
Test Management introductionTest Management introduction
Test Management introduction
 
ISTQB Test Process
ISTQB Test ProcessISTQB Test Process
ISTQB Test Process
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Istqb lesson 1
Istqb lesson 1Istqb lesson 1
Istqb lesson 1
 
Chapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.pptChapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.ppt
 
Software Testing Life Cycle (STLC) | Software Testing Tutorial | Edureka
Software Testing Life Cycle (STLC) | Software Testing Tutorial | EdurekaSoftware Testing Life Cycle (STLC) | Software Testing Tutorial | Edureka
Software Testing Life Cycle (STLC) | Software Testing Tutorial | Edureka
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Softwaretesting
SoftwaretestingSoftwaretesting
Softwaretesting
 
Software Testing Technique in Software Engineering
Software Testing Technique in Software EngineeringSoftware Testing Technique in Software Engineering
Software Testing Technique in Software Engineering
 

Similar a Software testing lecture 9

Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
Raghu Kiran
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
vidhyyav
 
verification and validation
verification and validationverification and validation
verification and validation
Dinesh Pasi
 

Similar a Software testing lecture 9 (20)

Software Testing
Software TestingSoftware Testing
Software Testing
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Software testing
Software testingSoftware testing
Software testing
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validation
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 
IT8076 – Software Testing Intro
IT8076 – Software Testing IntroIT8076 – Software Testing Intro
IT8076 – Software Testing Intro
 
Best software testing course
Best software testing courseBest software testing course
Best software testing course
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
 
Software Quality Assurance
Software Quality Assurance Software Quality Assurance
Software Quality Assurance
 
Software_Verification_and_Validation.ppt
Software_Verification_and_Validation.pptSoftware_Verification_and_Validation.ppt
Software_Verification_and_Validation.ppt
 
Software Quality
Software Quality Software Quality
Software Quality
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 
verification and validation
verification and validationverification and validation
verification and validation
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testing
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
 
Software engineering 20 software testing
Software engineering 20 software testingSoftware engineering 20 software testing
Software engineering 20 software testing
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 

Más de Abdul Basit

Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer Cheatsheet
Abdul Basit
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
Abdul Basit
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
Abdul Basit
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
Abdul Basit
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
Abdul Basit
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
Abdul Basit
 
Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3
Abdul Basit
 

Más de Abdul Basit (20)

Atlassian git cheatsheet
Atlassian git cheatsheetAtlassian git cheatsheet
Atlassian git cheatsheet
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
 
White box testing
White box testingWhite box testing
White box testing
 
Web testing
Web testingWeb testing
Web testing
 
Testing the documentation
Testing the documentationTesting the documentation
Testing the documentation
 
Testing software security
Testing software securityTesting software security
Testing software security
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Test planning
Test planningTest planning
Test planning
 
Test cases planning
Test cases planningTest cases planning
Test cases planning
 
Software Compatibility testing
Software Compatibility testingSoftware Compatibility testing
Software Compatibility testing
 
Black box testing
Black box testingBlack box testing
Black box testing
 
Software Automated testing and tools
Software Automated testing and toolsSoftware Automated testing and tools
Software Automated testing and tools
 
Why test software
Why test softwareWhy test software
Why test software
 
Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer Cheatsheet
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
 
Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Software testing lecture 9

  • 2. What is Software Testing?  Several definitions: “Testing is the process of establishing confidence that a program or system does what it is supposed to.” by Hetzel 1973 “Testing is the process of executing a program or system with the intent of finding errors.” by Myers 1979 “Testing is any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results.” by Hetzel 1983
  • 3. What is Software Testing? What is IEEE’s definition?  One of very important software development phases  A software process based on well-defined software quality control and testing standards, testing methods, strategy, test criteria, and tools.  Engineers perform all types of software testing activities to perform a software test process.  The last quality checking point for software on its production line
  • 4. Testing Objectives  The Major Objectives of Software Testing:  Uncover as many as errors (or bugs) as possible in a given timeline.  Demonstrate a given software product matching its requirement specifications.  Validate the quality of a software testing using the minimum cost and efforts.  Generate high quality test cases, perform effective tests, and issue correct and helpful problem reports.  Major goals:  uncover the errors (defects) in the software, including errors in: - requirements from requirement analysis - design documented in design specifications - coding (implementation) - system resources and system environment - hardware problems and their interfaces to software
  • 5. Who does Software Testing? - Test manager - manage and control a software test project - supervise test engineers - define and specify a test plan - Software Test Engineers and Testers - define test cases, write test specifications, run tests - Independent Test Group - Development Engineers - Only perform unit tests and integration tests - Quality Assurance Group and Engineers - Perform system testing - Define software testing standards and quality control process
  • 6. Software Testing Scope Software Testing Process Software Testing Management Configuration Management Software Problem Management Software Testing Methods Software Test Criteria Software Testing Tools Software Test Models Software Testing Strategies
  • 7. Software Testing Activities  Test Planning Define a software test plan by specifying: - a test schedule for a test process and its activities, as well as assignments - test requirements and items - test strategy and supporting tools - Test Design and Specification - Conduct software design based on well-defined test generation methods. - Specify test cases to achieve a targeted test coverage. - Test Set up: - Testing Tools and Environment Set-up - Test Suite Set-up - Test Operation and Execution - Run test cases manually or automatically
  • 8. Software Testing Activities  Test Result Analysis and Reporting Report software testing results and conduct test result analysis - Problem Reporting Report program errors using a systematic solution. - Test Management and Measurement Manage software testing activities, control testing schedule, measure testing complexity and cost - Test Automation - Define and develop software test tools - Adopt and use software test tools - Write software test scripts and facility - Test Configuration Management - Manage and maintain different versions of software test suites, test environment and tools, and documents for various product versions.
  • 9. Verification and Validation Software testing is one element of a broader topic that is often referred to as ===> Verification and Validation (V&V) Verification --> refers to the set of activities that ensure that software correctly implements a specific function. Validation -> refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements. Boehm [BOE81]: Verification: “Are we building the product right?” Validation: “Are we building the right product?” The definition of V&V encompasses many of SQA activities, including formal technical reviews, quality and configuration audits performance monitoring, different types of software testing feasibility study and simulation
  • 10. Software Quality Factors Functionality (exterior quality) - Correctness, reliability, usability, and integrity Engineering (interior quality) - Efficiency, testability, documentation, structure Adaptability (future qualities) - Flexibility, reusability, maintainability
  • 11. Software Testing Principles • Principle #1: Complete testing is impossible. • Principle #2: Software testing is not simple. • Reasons: • Quality testing requires testers to understand a system/product completely • Quality testing needs adequate test set, and efficient testing methods • A very tight schedule and lack of test tools. • Principle #3: Testing is risk-based. • Principle #4: Testing must be planned. • Principle #5: Testing requires independence. • Principle #6: Quality software testing depends on: • Good understanding of software products and related domain application • Cost-effective testing methodology, coverage, test methods, and tools. • Good engineers with creativity, and solid software testing experience