SlideShare a Scribd company logo
Learn Software Testing
Contents
• Part - 1: Quality
• Part - 2: Software Testing & Development Models
• Part - 3: Different Stages of SDLC with STLC
• Part - 4: Testing Techniques
• Part - 5: Types of Testing
• Part - 6: Test Automation
Quality has two elements
• QA - Quality Assurance
• QC - Quality Control
Part 1: Quality
• Quality from the
• Customer’s Viewpoint Fitness for use, or other customer needs
• Producer’s Viewpoint Meeting requirements
What is Quality ?

Recommended for you

Introduction to Software Review
Introduction to Software ReviewIntroduction to Software Review
Introduction to Software Review

The document discusses software review methods and optimal review practices. It describes different review methods from walkthroughs to inspections and their goals and attributes. Inspections are highlighted as the most formal review method, involving preparation, an orientation, planning, a review meeting, rework, and verification stages. The goals of technical reviews are also outlined, including improving quality and knowledge while minimizing costs.

Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing

Iseb, ISTQB Static Testing Foundation Level Software Testing Lecture Notes, Static Testing www.onsoftwaretest.com

isebistqbstatic
Static testing techniques
Static testing techniquesStatic testing techniques
Static testing techniques

Topics: Reviews and the test process, Types of review, static analysis To know more about Offer- http://mazenet-chennai.in/mazenet-offers.html Syllabus- http://www.mazenet-chennai.in/software-testing-training-in-chennai.html Slide share: http://www.slideshare.net/mazenet_solution/presentations For more events- http://mazenet-chennai.in/mazenet-events.html All videos- https://www.youtube.com/c/Mazenetsolution Facebook- https://www.facebook.com/Mazenet.IT.Solution/ Twitter- https://twitter.com/Maze_net Mail us : marketing@mazenetsolution.com Contact: 9629728714

reviews and the test processstatic analysismazenet
• Software quality includes activities related to both
• Process, and the
• Product
• Quality Assurance is about the work process
• Quality Control is about the product
Quality Function
• Quality assurance activities are work process oriented.
• They measure the process, identify deficiencies, and suggest improvements.
• The direct results of these activities are changes to the process.
• These changes can range from better compliance with the process to entirely new processes.
• The output of quality control activities is often the input to quality assurance activities.
• Audits are an example of a QA activity which looks at whether and how the process is being
followed. The end result may be suggested improvements or better compliance with the
process.
What is Quality Assurance?
• Quality control activities are work product oriented.
• They measure the product, identify deficiencies, and suggest improvements.
• The direct results of these activities are changes to the product.
• These can range from single-line code changes to completely reworking a product
from design.
• They evaluate the product, identify weaknesses and suggest improvements.
• Testing and reviews are examples of QC activities since they usually result in
changes to the product, not the process.
• QC activities are often the starting point for quality assurance (QA) activities.
What is Quality Control?
Prevention is better than cure . . .
. . . but not everything can be prevented!
Cure
Detection
Prevention
Prevention and Detection

Recommended for you

software testing
 software testing software testing
software testing

This document provides an overview of software testing, including definitions, types of testing, and the software testing lifecycle. It defines software testing as a method to assess software functionality. The key points covered are: - Software testing ensures software does what it's intended to do and remains functional after changes. - Types of testing include unit, integration, system, and regression testing. - The software testing lifecycle includes planning, developing test cases, executing tests, and closing test cycles. - Cloud testing can reduce regression testing time by using virtualized hardware and software services.

safety
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes

This document discusses software validation and verification (V&V) and the selection process. It defines validation as evaluating software at the end of development to ensure it is free of failures and meets requirements. Verification is determining if each development phase meets the requirements of the previous phase. It then outlines objectives of V&V like correctness and performance. Approaches covered include technical reviews, testing, proof of correctness, simulation and prototyping, and requirements tracing. The document also discusses limitations of V&V and selection of techniques based on software lifecycle phases like requirements, specifications, design, and implementation.

ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing

The document discusses fundamentals of software testing including definitions of key concepts, objectives of testing, and seven principles of testing. It defines software testing as a process to evaluate quality and reduce risks of failure. Objectives include verifying requirements and validating user expectations. Testing is necessary because humans make mistakes, and testing can help reduce failures. Quality assurance supports proper testing processes. The seven principles are: 1) testing shows defects but not their absence, 2) exhaustive testing is impossible, 3) early testing saves time and money, 4) defects cluster together, 5) beware of pesticide paradox, 6) testing is context dependent, and 7) absence of errors is a fallacy.

software testing
Testing
What is testing
Objectives of Testing
Part 2: Testing
Definition:
• Testing is process of trying to discover every conceivable fault or
weakness in a work product.
• Testing is a process of executing a program with the intent of finding
an error.
• A good test is one that has a high probability of finding an as yet
undiscovered error.
• A successful test is one that uncovers an as yet undiscovered error
What is Testing?
• Objective of testing is to find all possible bugs (defects) in a work
product
• Testing should intentionally attempt to make things go wrong to
determine if things happen when they shouldn't or things don't happen
when they should.
What is objective of Testing?
Setting up criteria for testing
Criteria can be at phase level
Entry Criteria
• Parallelism Vs Ready for use
Exit Criteria
• Completeness Vs Risk of release
Suspension Criteria
• Show stopper bugs
• Crossing a threshold number of bugs
• Developers producing a new version making the old one redundant
Resumption Criteria
• Above hurdles being cleared

Recommended for you

ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic

Testing serves several purposes: finding defects, gaining confidence in quality, and providing information for decision-making. There are seven key principles of testing: testing shows the presence of defects but not their absence; exhaustive testing is impossible; early testing is most effective; defects tend to cluster; tests can become outdated and less effective over time; testing needs to be tailored to the context; and absence of errors in testing does not guarantee absence of errors in operation. Testing involves several processes: planning and control, analysis and design, implementation and execution, evaluating exit criteria and reporting, and closure activities. Testing can be done at the component, integration, system, and acceptance levels and through functional, non-functional, structural, and regression techniques.

levelbasicistqb
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals

Testing is the process of validating and verifying software to ensure it meets specifications and functions as intended. There are different levels of testing including unit, integration, system, and acceptance testing. An important part of testing is having a test plan that outlines the test strategy, cases, and process to be followed. Testing helps find defects so the product can be improved.

software engineeringtestingblack box
Role of Testing
Role of Testing Role of Testing
Role of Testing

Testing plays an important role in the certification process for systems and software. The certification process involves verification and validation activities to determine if a system meets its specified requirements. Testing is used for both verification and validation at various stages - from unit testing of individual components to system integration testing and user acceptance testing. Standards like DO-178B for aerospace and IEC 60601-1-4 for biomedical engineering define requirements for testing and coverage criteria that must be met for certification based on the criticality of the system. A comprehensive testing approach throughout the development lifecycle is needed to identify defects and improve safety for certification.

• The Goal of a software tester is to find defects
• And find them as early as possible.
What exactly Does a Software Tester Do?
Testers hunt errors
• Detected errors are celebrated - for the good of the work product
Testers are destructive - but creatively so
• Testing is a positive and creative effort of destruction
Testers pursue errors, not people
• Errors are in the work product, not in the person who made the
mistake
Testers add value
• by discovering errors as early as possible
What does testing mean to testers?
Waterfall Model for Testing
 Simple and easy to use.
 Easy to manage due to the rigidity of the model – each phase has specific
deliverables and a review process.
 Phases are processed and completed one at a time.
 Works well for smaller projects where requirements are very well understood.
Advantages of Waterfall Model

Recommended for you

Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)

The document discusses various topics related to dependability and security assurance for critical systems, including static analysis techniques, reliability testing, and validation processes. It notes that validation costs for critical systems are significantly higher than for non-critical systems, often over 50% of total development costs, due to additional validation activities required. Specific static analysis techniques covered include formal verification, model checking, and automated program analysis.

software testingcritical systemscomputer security
Software testing
Software testingSoftware testing
Software testing

This document provides an overview of software testing, including definitions, purposes, strategies, methods, levels, types, and tools. It defines software testing as evaluating a system to determine if it meets requirements and works as expected. Testing is necessary to find errors, improve reliability and quality, and satisfy users. Strategies include unit, integration, and validation testing. Methods are divided into black-box and white-box testing. Levels include unit, integration, system, and acceptance testing. Types incorporate installation, compatibility, smoke, regression, alpha, and beta testing. Tools aid in test management, functional testing, load testing, and debugging.

Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing

In this session you will learn: Overview of Testing Life Cycle Testing Methodologies Black Box Testing White Box Testing Gray Box Testing Integration Testing System Testing Regression Testing User Acceptance Testing (UAT) For more information: https://www.mindsmapped.com/courses/quality-assurance/qa-software-testing-training-for-beginners/

qa trainingquality assurance trainingonline qa training
 Adjusting scope during the life cycle can kill a project
 No working software is produced until late during the life cycle.
 High amounts of risk and uncertainty.
 Poor model for complex and object-oriented projects.
 Poor model where requirements are at a moderate to high risk of changing.
Disadvantages of Waterfall Model
It is a process of establishing requirements, designing, building and
testing a system, done as a series of smaller development
Increment produced by Iteration is tested at several levels as part of its
development
Regression testing is important after all iterations
Verification and verification can be carried outs on each iteration
Disadvantages of Waterfall Model
W-Model for Testing
 Simple and easy to use.
 Each phase has specific deliverables.
 Higher chance of success over the waterfall model due to the development
of test plans early on during the life cycle.
 Works well for small projects where requirements are easily understood.
Advantages of W - Model

Recommended for you

Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control software

A software system is more than the code; it is a set of related artifacts; these may contain defects or problem areas that should be reworked or removed; quality-related attributes of these artifacts should be evaluated Reviews allow us to detect and eliminate errors/defects early in the software life cycle (even before any code is available for testing), where they are less costly to repair Most problems have their origin in requirements and design; requirements and design artifacts can be reviewed but not executed and tested A code review usually reveals directly the location of a bug, while testing requires a debugging step to locate the origin of a bug Adherence to coding standards cannot be checked by testing

softwareproject management
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques

Static testing examines and reviews software without executing it, while dynamic testing executes the software. There are different types of testing like unit, integration, system, and acceptance testing. Testing techniques include white box, black box, incremental, and thread testing. White box testing examines internal program structure and logic, while black box testing verifies requirements without considering internal structure.

Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality

The document discusses software quality assurance and testing. It defines software quality as having two aspects - quality of design which includes requirements and specifications, and quality of conformance which focuses on implementation. Software Quality Assurance (SQA) includes quality management, effective engineering processes, formal techniques, testing strategies, documentation control, and measurement/reporting. SQA aims to ensure requirements quality, design quality, code quality, and effective quality control. Non-functional attributes like reliability, usability, and performance largely determine a software's subjective quality from a user's perspective.

softwaresoftware developmentsoftware testing
 Very rigid, like the waterfall model.
 Little flexibility and adjusting scope is difficult and expensive.
 Software is developed during the implementation phase, so no early
prototypes of the software are produced.
 Model doesn’t provide a clear path for problems found during testing phases.
Disadvantages of W - Model
Stages of SDLC with STLC
Part 3: Different stages of SDLC with STLC
Different stages of SDLC with STLC
Stage-1 Requirement Gathering
• DA: Defining requirements to establish specifications is the first
step in the development of software.
• TA: Reviewing the requirements e.g the requirements should not
have ambiguous words like (may or may not). It should be clear
and concise.
Different stages of SDLC with STLC
Stage-2 Functional Specification
• DA: It describes the product’s behaviors as seen by an external
observer, and contains the technical information and data needed
for the design. The functional specification defines what the
functionality will be
• TA: In order to make the functional specifications accurate we
have review our functional specifications.

Recommended for you

Software Inspection And Defect Management
Software Inspection And Defect ManagementSoftware Inspection And Defect Management
Software Inspection And Defect Management

The document discusses software inspections and defect management. It defines key terms like defects, defect classification, and causes of defects. It explains that rework makes up 44% of project costs and discusses how inspections can help reduce defects and rework. Formal inspections involve individual preparation, overview meetings, review planning, inspection meetings, and follow up action to identify and address defects early. Benefits of inspections include increased productivity, reduced defects, and preparation for subsequent phases.

St
StSt
St

The document outlines an 8 unit course on software testing. Unit 1 covers basics of software testing including human errors, software quality, requirements, correctness, reliability, and testing metrics. Unit 2 covers additional basics like software and hardware testing, testing strategies, and defect management. Units 3 and 4 cover test generation from requirements using techniques like equivalence partitioning and boundary value analysis. The remaining units cover topics like structural testing, data flow testing, test case selection, testing processes, and system/acceptance testing. Textbooks and reference materials are also listed.

Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)

Performance testing is a type of non-functional testing that evaluates the speed, scalability, and stability of a system or process under a particular workload. It seeks to determine a system's effectiveness, efficiency, and stability under a particular anticipated load. Some key aspects of performance testing include: - Load testing to determine maximum operating capacity and identify bottlenecks. - Stress testing to establish system failure thresholds or points at which unacceptable response times occur. - Endurance testing to determine if the system will continue to perform under anticipated long-term production loads.

functional testingmanual testingperformance testing
Different stages of SDLC with STLC
Stage-3 Design
• DA: The software specifications are transformed in to design
models that describe the details of the data structures, system
architecture, interface and the components.
• TA: Each design product is reviewed for quality before moving the
next phase of the software development.
Different stages of SDLC with STLC
Stage-4 Code
• DA: In this phase the designs are translated into code.
• TA: Code review is a process of verifying the source code. Code
review is done the find and fix the defects that are overlooked in
the initial development phase, to improve overall quality of code.
Different stages of SDLC with STLC
Stage-5 Building Software
• DA: In this phase we build different software units and integrate
them one by one to build single software.
• TA: Unit testing & Integration testing
Different stages of SDLC with STLC
Stage-6 Building system
• DA: After the software has been build we have the whole system
considering all the non-functional requirements like installation
procedure, configuration etc.
• TA: System testing & Acceptance testing

Recommended for you

A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...

A Research Study on importance of Testing and Quality Assurance in Software Development Life Cycle (SDLC) Models & Quality Assurance for Product Development using Agile & A Software Quality Framework for Mobile Application Testing

a research study on importance of testing and qual
unit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxunit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptx

The document discusses various topics related to software testing such as the testing life cycle, requirement traceability matrix, test planning, different types of testing, challenges in testing, test team approaches, and cost aspects. It emphasizes that testing is an important process to identify defects and improve quality but is often undervalued. A structured approach and clear policies are needed to make testing effective. Tracking metrics like defect trends and test team efficiency can help optimize the testing process.

Software testing
Software testingSoftware testing
Software testing

This document discusses software testing practices and processes. It covers topics like unit testing, integration testing, validation testing, test planning, and test types. The key points are that testing aims to find errors, good testing uses both valid and invalid inputs, and testing should have clear objectives and be assigned to experienced people. Testing is done at the unit, integration and system levels using techniques like black box testing.

Different stages of SDLC with STLC
Stage-7 Release for use
• After the whole product has been developed and the required
level of quality has been achieved and the software is release for
the actual use of the customers.
Testing Techniques
• Verification and Validation
Part 4: Testing Techniques
• Reviews
• Walkthrough
• Inspection
Verification
There are two main strategies for validating software
• White Box testing
• Black Box testing
Validation Strategies

Recommended for you

Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals

This document provides an overview of software testing concepts and processes. It discusses the importance of testing in the software development lifecycle and defines key terms like errors, bugs, faults, and failures. It also describes different types of testing like unit testing, integration testing, system testing, and acceptance testing. Finally, it covers quality assurance and quality control processes and how bugs are managed throughout their lifecycle.

ibm trainingsdlc
Software Testing
Software TestingSoftware Testing
Software Testing

The document discusses software testing, providing definitions and explanations of key concepts. It defines software testing as identifying correctness, completeness, security and quality of software. It also describes test levels from unit to acceptance testing and distinguishes between white box and black box testing. Test cases, scripts, suites and scenarios are defined. The software testing cycle and roles in testing are outlined.

Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering

The document discusses test planning and management. It covers topics like test strategy, test plan, test automation, mutation testing, defects in software engineering, manual vs automation testing challenges, skills of quality testers, agile testing, and the Selenium testing tool. It provides information on creating test plans according to IEEE standards and discusses the components, requirements, and benefits of test automation frameworks and tools.

engineering test management
White Box Testing
• Deals with the internal logic and structure of the code
• The tests are written based on the white box testing strategy
incorporate coverage of the code written, branches, paths,
statements and internal logic of the code etc.
• Normally done the developers
Validation Strategies
White Box Testing can be done by:
• Data Coverage
• Code Coverage
White Box testing Methods
Date Coverage
• Data flow is monitored or examined through out the program. E.g.
watch window we use to monitor the values of the variables and
expressions.
White Box testing Methods
Code Coverage
• It’s a process of finding areas of a program not exercised by a set
of test cases,
• Creating additional test cases to increase coverage
• Code coverage can be implemented using basic measure like,
statement coverage, decision coverage, condition coverage and
path coverage
White Box testing Methods

Recommended for you

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance

This lecture is about the detail definition of software quality and quality assurance. Provide details about software tesing and its types. Clear the basic concepts of software quality and software testing.

software testingstatic and dynamic testingsoftware quality
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING

The document discusses software testing and quality assurance. It describes the importance of testing in the software development life cycle (SDLC) and outlines different types of testing like unit testing, integration testing, and system testing. It also defines key terms like bugs, faults, errors, and failures. Verification is described as confirming the software meets its specifications while validation confirms it meets user requirements. The quality of software is defined and a bug reporting lifecycle is presented.

Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics

The document outlines topics related to quality control engineering and software testing. It discusses key concepts like the software development lifecycle (SDLC), common SDLC models, software quality control, verification and validation, software bugs, and qualifications for testers. It also covers the quality control lifecycle, test planning, requirements verification techniques, and test design techniques like equivalence partitioning and boundary value analysis.

cmmitestingsoftware
Black Box Testing
• Does not need any knowledge of internal design or code
• Its totally based on the testing for the requirements and
functionality of the work product/software application.
• Tester is needed to be thorough with the requirement
specifications of the system and as a user, should know how the
system should behave in response to the particular action.
Validation Strategies
The following are commonly used Black Box methods :
• Equivalence partitioning
• Boundary-value analysis
• Error guessing
Black Box testing Methods
Part 5: Various Types of Testing
Validation is done at two levels
• Low Level
• Unit testing
• Integration Testing
• High Level
• Function Testing
• System Testing
• Acceptance Testing
Validation Activities
• Searches for defect and verifies the functionality of software, depending
upon the context of the development
• It includes testing of functional and non-functional characteristics
• It occurs with access to code being tested and with the support of
development environment
• Defects are fixed as soon as they are found with out formally recording
incident
• If test cases are prepared and automated before coding, it is termed as
test-first approach or test-driven development.
Unit Testing

Recommended for you

Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design

System Testing and Quality Assurance- Need of testing, types of testing, levels of testing, process of testing, quality assurance

ssadtesting
Software testing
Software testingSoftware testing
Software testing

A brief that includes the following: - Software Testing - Quality Assurance - Quality Control - Types of Testing - Levels of Software Testing - Types of Performance Testing - API - Verification & Validation - Test Plan & Testing Strategy - Agile & Waterfall - Software Development Life Cycle - Career Path

software testingagilequality assurance
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types

This document provides an overview of software testing concepts and definitions. It discusses key topics such as software quality, testing methods like static and dynamic testing, testing levels from unit to acceptance testing, and testing types including functional, non-functional, regression and security testing. The document is intended as an introduction to software testing principles and terminology.

softwa
Integration Testing
Integration testing tests interface between components, interaction to
different parts of system.
Greater the scope of Integration, more it becomes to isolate failures to
specific component or system, which may leads to increased risk.
Integration testing should normally be integral rather than big bang, in
order to reduce the risk of late defect discovery
Non functional characteristics (e.g. performance) may be included in
Integration Testing
Function Testing
It is used to detect discrepancies between a program’s functional
specification and the actual behavior of an application.
The goal of function testing is to verify whether your product meets the
intended functional specifications laid out the development
documentation.
When a discrepancy is detected, either the program or the specification is
incorrect.
All the black box methods are applicable to function based testing
It is concerned with the behavior of whole system as defined by the
scope of development project
It includes both functional and non-functional requirement of system
System testing falls within the scope of black box testing.
On building the entire system, it needs to be tested against the system
specification.
An Independent testing team may carry out System Testing
System Testing
 Usability testing
 Performance Testing
 Load Testing
 Stress Testing
 Security Testing
 Configuration Testing
 Compatibility Testing
 Installability Testing
 Recovery Testing
 Availability Testing
 Volume Testing
System Testing Types

Recommended for you

Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)

Testing is the process of executing software to find defects and verify requirements are met. It involves executing a program or modules to observe behavior and outcomes, and analyze failures to locate and fix faults. The main purposes of testing are to demonstrate quality and proper behavior, and to detect and fix defects. Testing strategies include starting with individual component tests and progressing to integrated system tests. Different techniques like black-box and white-box testing are used at various stages. Manual testing is time-consuming while automated testing is faster and more reliable. Testing continues until quality goals are met or resources run out. Debugging locates and removes defects found via testing.

SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting

This document provides a summary of key concepts in software development lifecycles (SDLC), testing, and related topics: - It defines SDLC as the process that ensures good software is built and outlines common SDLC phases like planning, analysis, design, development, testing, deployment, and support. - It also describes different SDLC models like waterfall, iterative, agile, and V-model approaches. - Key aspects of software testing are defined like validation, verification, manual vs. automation testing, and common test types like unit, integration, system, and user acceptance testing. - The roles of subject matter experts and types of testing portfolios are briefly covered. -

SWT2_tim.pptx
SWT2_tim.pptxSWT2_tim.pptx
SWT2_tim.pptx

The document discusses software testing throughout the software development life cycle. It covers key topics like software development life cycle models, test levels, test types, and maintenance testing. Test levels include component testing, integration testing, and system testing. Software development life cycle models can be sequential, iterative, or incremental. The document provides details on various models like waterfall, V-model, spiral, agile development, etc. It also discusses test planning, test design techniques, integration strategies like big bang, top-down and bottom-up integration.

emergency notary public
Usability Testing
• The typical aim of usability testing is to cause the application to fail to
meet its usability requirements so that the underlying defects can be
identified, analyzed, fixed, and prevented in the future.
 Performance testing is testing to ensure that the application response
in the limit set by the user.
Performance Testing
 Subject the system to extreme pressure in a short span.
 E.g Simultaneous log-on of 500 users
 Saturation load of transactions
Stress Testing
Configuration Testing
• Configuration testing is the process of checking the operation of the
software you are testing with all these various types of hardware.
Compatibility Testing
 The purpose of compatibility testing is to evaluate how well software
performs in a particular hardware, software, operating system, browser
or network environment.
Acceptance Testing
 Acceptance testing may assess the system readiness for deployment and use
 The goal is to establish confidence in the system, parts of system or non-
functional characteristics of the system
 Following are types of Acceptance Testing:
• User Acceptance Testing
• Operational Testing
• Contract and Regulation Acceptance Testing
• Alpha and Beta Testing
Testing software that has been tested before.
• Why?
• Peripheral testing for bug fixes
• Retesting the old version functionality with the new version
Regression Test
Why retest?
 Because any software product that is actively used and supported
must be changed from time to time, and every new version of a
product should be retested
Retesting

Recommended for you

SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING

Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not. In simple words, testing is executing a system in order to identify any gaps, errors, or missing requirements in contrary to the actual requirements.

software testingsoftware developmentengineering
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis

This document discusses various software testing techniques. It begins by explaining the goals of verification and validation as establishing confidence that software is fit for its intended use. It then covers different testing phases from component to integration testing. The document discusses both static and dynamic verification methods like inspections, walkthroughs, and testing. It details test case development techniques like equivalence partitioning and boundary value analysis. Finally, it covers white-box and structural testing methods that derive test cases from examining a program's internal structure.

Software Testing
Software Testing Software Testing
Software Testing

The document discusses the Software Development Life Cycle (SDLC) and various aspects of software testing. It describes the different phases of SDLC like requirements, design, coding, testing and maintenance. It also explains different SDLC models like waterfall, spiral, prototype and V-model. The document then focuses on testing, covering topics like test planning, test cases, different levels of testing (unit, integration, system), types of testing (black box, white box, regression), and non-functional testing.

manualsdlcstlc
Principles of Test Automation
# 1: Choose carefully what to automate
• Automate tests for highly visible areas
• Minimize automating change-prone areas
• Between GUI and non-GUI portion automation, go for automating non-GUI portions first
• Automate tests for dependencies to catch ripple effects early
• Automate areas where multiple combos are possible (pros and cons)
• Automate areas that are re-usable
• Automate “easy areas” to show low hanging fruits
Part 6: Test Automation
Principles of Test Automation
# 2: Ensure Automation Covers Full
Circle
Plan
Do
Check
Act
• Automatic Analysis
• Fish Bone Diagrams
• Problem Identification
• Test Capture
• Test Execution
• Results Comparison
• Test Planning
• Automation Planning
• Corrective Action
Implementation
• Automatic Rollover
to next runs
• Incorporation into
Regression
• Compatibility to Platform
• Portability across platforms
• Integration with TCDB, DR and SCM
• 2-way mapping to source code (may not be possible in services)
• Scripting Language
• Compatible to Multiple Programming Environments
• Configurability
• Test Case Reusability
• Selective Execution
• Smart Comparison
• Reliable Support
• Current documentation
Principles of Test Automation
# 3: Choose Proper Automation Tool
• Resources for Installation
• Resources for ongoing execution
• People Resources
Principles of Test Automation
# 4: Plan for Infrastructure

Recommended for you

Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...

The process of executing and verifying whether the application or a program or system meets the customer requirements with the intent of finding errors.

phpjavadot net
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck

YOUR RELIABLE WEB DESIGN & DEVELOPMENT TEAM — FOR LASTING SUCCESS WPRiders is a web development company specialized in WordPress and WooCommerce websites and plugins for customers around the world. The company is headquartered in Bucharest, Romania, but our team members are located all over the world. Our customers are primarily from the US and Western Europe, but we have clients from Australia, Canada and other areas as well. Some facts about WPRiders and why we are one of the best firms around: More than 700 five-star reviews! You can check them here. 1500 WordPress projects delivered. We respond 80% faster than other firms! Data provided by Freshdesk. We’ve been in business since 2015. We are located in 7 countries and have 22 team members. With so many projects delivered, our team knows what works and what doesn’t when it comes to WordPress and WooCommerce. Our team members are: - highly experienced developers (employees & contractors with 5 -10+ years of experience), - great designers with an eye for UX/UI with 10+ years of experience - project managers with development background who speak both tech and non-tech - QA specialists - Conversion Rate Optimisation - CRO experts They are all working together to provide you with the best possible service. We are passionate about WordPress, and we love creating custom solutions that help our clients achieve their goals. At WPRiders, we are committed to building long-term relationships with our clients. We believe in accountability, in doing the right thing, as well as in transparency and open communication. You can read more about WPRiders on the About us page.

web development agencywpriderswordpress development
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing

Invited Remote Lecture to SC21 The International Conference for High Performance Computing, Networking, Storage, and Analysis St. Louis, Missouri November 18, 2021

distributed supercomputerdistributed machine learning
• Training
• Development
• Testing the Tests
• Sync-ing with product version changes
Principles of Test Automation
# 5: Account for Gestation Period
• Start small
• Don’t try to automate everything at the same time
• Allow time for evolving standards
Principles of Test Automation
# 6: Run a Trial & Calibrate the Tool
Config File Scenarios
Tools Results
Reports/
Metrics
Test Framework
Test cases
Report Generator
Execute
Read
Read
Execute
Modify
Write
Read
Write
Test Automation Components
• The work on automation should go in parallel with product
development
• The requirements for automation spans over to multiple phases for
multiple releases like the product requirements
• The automation can be carried out in parallel with test design
• Sometimes the test cases need to be modified to suit the automation
requirements; where automation exist the test cases need not be
elaborate
• Where a dedicated team exist for automation, the schedule for
automation can be independent of product releases, with some (tested)
deliverables marked for each product release
Process of Test Automation

Recommended for you

Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf

To help you choose the best DiskWarrior alternative, we've compiled a comparison table summarizing the features, pros, cons, and pricing of six alternatives.

data recoverydatadiskwarrior
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx

How do we build an IoT product, and make it profitable? Talk from the IoT meetup in March 2024. https://www.meetup.com/iot-sweden/events/299487375/

iot
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx

MuleSoft Meetup on APM and IDP

mulesoftai

More Related Content

What's hot

Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software Testing
Sagar Joshi
 
ISTQB - Software development life cycle
ISTQB - Software development life cycleISTQB - Software development life cycle
ISTQB - Software development life cycle
HoangThiHien1
 
Static Testing
Static Testing Static Testing
Static Testing
Suraj Vishwakarma
 
Introduction to Software Review
Introduction to Software ReviewIntroduction to Software Review
Introduction to Software Review
Philip Johnson
 
Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing
onsoftwaretest
 
Static testing techniques
Static testing techniquesStatic testing techniques
Static testing techniques
Mazenetsolution
 
software testing
 software testing software testing
software testing
Sara shall
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
anasz3z3
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
HoangThiHien1
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
Selin Gungor
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
Raviteja Chowdary Adusumalli
 
Role of Testing
Role of Testing Role of Testing
Role of Testing
Rishu Seth
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)
Ian Sommerville
 
Software testing
Software testingSoftware testing
Software testing
mkn3009
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
Sachin-QA
 
Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control software
Reetesh Gupta
 
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques
Dhanasekaran Nagarajan
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
Ajeng Savitri
 
Software Inspection And Defect Management
Software Inspection And Defect ManagementSoftware Inspection And Defect Management
Software Inspection And Defect Management
Ajay K
 
St
StSt

What's hot (20)

Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software Testing
 
ISTQB - Software development life cycle
ISTQB - Software development life cycleISTQB - Software development life cycle
ISTQB - Software development life cycle
 
Static Testing
Static Testing Static Testing
Static Testing
 
Introduction to Software Review
Introduction to Software ReviewIntroduction to Software Review
Introduction to Software Review
 
Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing
 
Static testing techniques
Static testing techniquesStatic testing techniques
Static testing techniques
 
software testing
 software testing software testing
software testing
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Role of Testing
Role of Testing Role of Testing
Role of Testing
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)
 
Software testing
Software testingSoftware testing
Software testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control software
 
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
 
Software Inspection And Defect Management
Software Inspection And Defect ManagementSoftware Inspection And Defect Management
Software Inspection And Defect Management
 
St
StSt
St
 

Similar to Learn software testing

Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)
bharathanche
 
A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...
Sehrish Asif
 
unit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxunit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptx
PriyaFulpagare1
 
Software testing
Software testingSoftware testing
Software testing
Preeti Mishra
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 
Software Testing
Software TestingSoftware Testing
Software Testing
Krishna Sujeer
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
MansiganeshJawale
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
Saqib Raza
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
Raju Raaj
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
Belal Raslan
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
Jayant Dalvi
 
Software testing
Software testingSoftware testing
Software testing
Omar Al-Bokari
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
Confiz
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
ShudipPal
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
Gavin Thys
 
SWT2_tim.pptx
SWT2_tim.pptxSWT2_tim.pptx
SWT2_tim.pptx
BnhT27
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
acemindia
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
WBUTTUTORIALS
 
Software Testing
Software Testing Software Testing
Software Testing
CHANDAN CHATURVEDI
 
Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...
ChithraCegon
 

Similar to Learn software testing (20)

Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)
 
A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...
 
unit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxunit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptx
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
SWT2_tim.pptx
SWT2_tim.pptxSWT2_tim.pptx
SWT2_tim.pptx
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Software Testing
Software Testing Software Testing
Software Testing
 
Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...
 

Recently uploaded

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
Larry Smarr
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
Neo4j
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
Awais Yaseen
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
Kief Morris
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 

Recently uploaded (20)

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 

Learn software testing

  • 2. Contents • Part - 1: Quality • Part - 2: Software Testing & Development Models • Part - 3: Different Stages of SDLC with STLC • Part - 4: Testing Techniques • Part - 5: Types of Testing • Part - 6: Test Automation
  • 3. Quality has two elements • QA - Quality Assurance • QC - Quality Control Part 1: Quality
  • 4. • Quality from the • Customer’s Viewpoint Fitness for use, or other customer needs • Producer’s Viewpoint Meeting requirements What is Quality ?
  • 5. • Software quality includes activities related to both • Process, and the • Product • Quality Assurance is about the work process • Quality Control is about the product Quality Function
  • 6. • Quality assurance activities are work process oriented. • They measure the process, identify deficiencies, and suggest improvements. • The direct results of these activities are changes to the process. • These changes can range from better compliance with the process to entirely new processes. • The output of quality control activities is often the input to quality assurance activities. • Audits are an example of a QA activity which looks at whether and how the process is being followed. The end result may be suggested improvements or better compliance with the process. What is Quality Assurance?
  • 7. • Quality control activities are work product oriented. • They measure the product, identify deficiencies, and suggest improvements. • The direct results of these activities are changes to the product. • These can range from single-line code changes to completely reworking a product from design. • They evaluate the product, identify weaknesses and suggest improvements. • Testing and reviews are examples of QC activities since they usually result in changes to the product, not the process. • QC activities are often the starting point for quality assurance (QA) activities. What is Quality Control?
  • 8. Prevention is better than cure . . . . . . but not everything can be prevented! Cure Detection Prevention Prevention and Detection
  • 9. Testing What is testing Objectives of Testing Part 2: Testing
  • 10. Definition: • Testing is process of trying to discover every conceivable fault or weakness in a work product. • Testing is a process of executing a program with the intent of finding an error. • A good test is one that has a high probability of finding an as yet undiscovered error. • A successful test is one that uncovers an as yet undiscovered error What is Testing?
  • 11. • Objective of testing is to find all possible bugs (defects) in a work product • Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn't or things don't happen when they should. What is objective of Testing?
  • 12. Setting up criteria for testing Criteria can be at phase level Entry Criteria • Parallelism Vs Ready for use Exit Criteria • Completeness Vs Risk of release Suspension Criteria • Show stopper bugs • Crossing a threshold number of bugs • Developers producing a new version making the old one redundant Resumption Criteria • Above hurdles being cleared
  • 13. • The Goal of a software tester is to find defects • And find them as early as possible. What exactly Does a Software Tester Do?
  • 14. Testers hunt errors • Detected errors are celebrated - for the good of the work product Testers are destructive - but creatively so • Testing is a positive and creative effort of destruction Testers pursue errors, not people • Errors are in the work product, not in the person who made the mistake Testers add value • by discovering errors as early as possible What does testing mean to testers?
  • 16.  Simple and easy to use.  Easy to manage due to the rigidity of the model – each phase has specific deliverables and a review process.  Phases are processed and completed one at a time.  Works well for smaller projects where requirements are very well understood. Advantages of Waterfall Model
  • 17.  Adjusting scope during the life cycle can kill a project  No working software is produced until late during the life cycle.  High amounts of risk and uncertainty.  Poor model for complex and object-oriented projects.  Poor model where requirements are at a moderate to high risk of changing. Disadvantages of Waterfall Model
  • 18. It is a process of establishing requirements, designing, building and testing a system, done as a series of smaller development Increment produced by Iteration is tested at several levels as part of its development Regression testing is important after all iterations Verification and verification can be carried outs on each iteration Disadvantages of Waterfall Model
  • 20.  Simple and easy to use.  Each phase has specific deliverables.  Higher chance of success over the waterfall model due to the development of test plans early on during the life cycle.  Works well for small projects where requirements are easily understood. Advantages of W - Model
  • 21.  Very rigid, like the waterfall model.  Little flexibility and adjusting scope is difficult and expensive.  Software is developed during the implementation phase, so no early prototypes of the software are produced.  Model doesn’t provide a clear path for problems found during testing phases. Disadvantages of W - Model
  • 22. Stages of SDLC with STLC Part 3: Different stages of SDLC with STLC
  • 23. Different stages of SDLC with STLC Stage-1 Requirement Gathering • DA: Defining requirements to establish specifications is the first step in the development of software. • TA: Reviewing the requirements e.g the requirements should not have ambiguous words like (may or may not). It should be clear and concise.
  • 24. Different stages of SDLC with STLC Stage-2 Functional Specification • DA: It describes the product’s behaviors as seen by an external observer, and contains the technical information and data needed for the design. The functional specification defines what the functionality will be • TA: In order to make the functional specifications accurate we have review our functional specifications.
  • 25. Different stages of SDLC with STLC Stage-3 Design • DA: The software specifications are transformed in to design models that describe the details of the data structures, system architecture, interface and the components. • TA: Each design product is reviewed for quality before moving the next phase of the software development.
  • 26. Different stages of SDLC with STLC Stage-4 Code • DA: In this phase the designs are translated into code. • TA: Code review is a process of verifying the source code. Code review is done the find and fix the defects that are overlooked in the initial development phase, to improve overall quality of code.
  • 27. Different stages of SDLC with STLC Stage-5 Building Software • DA: In this phase we build different software units and integrate them one by one to build single software. • TA: Unit testing & Integration testing
  • 28. Different stages of SDLC with STLC Stage-6 Building system • DA: After the software has been build we have the whole system considering all the non-functional requirements like installation procedure, configuration etc. • TA: System testing & Acceptance testing
  • 29. Different stages of SDLC with STLC Stage-7 Release for use • After the whole product has been developed and the required level of quality has been achieved and the software is release for the actual use of the customers.
  • 30. Testing Techniques • Verification and Validation Part 4: Testing Techniques
  • 31. • Reviews • Walkthrough • Inspection Verification
  • 32. There are two main strategies for validating software • White Box testing • Black Box testing Validation Strategies
  • 33. White Box Testing • Deals with the internal logic and structure of the code • The tests are written based on the white box testing strategy incorporate coverage of the code written, branches, paths, statements and internal logic of the code etc. • Normally done the developers Validation Strategies
  • 34. White Box Testing can be done by: • Data Coverage • Code Coverage White Box testing Methods
  • 35. Date Coverage • Data flow is monitored or examined through out the program. E.g. watch window we use to monitor the values of the variables and expressions. White Box testing Methods
  • 36. Code Coverage • It’s a process of finding areas of a program not exercised by a set of test cases, • Creating additional test cases to increase coverage • Code coverage can be implemented using basic measure like, statement coverage, decision coverage, condition coverage and path coverage White Box testing Methods
  • 37. Black Box Testing • Does not need any knowledge of internal design or code • Its totally based on the testing for the requirements and functionality of the work product/software application. • Tester is needed to be thorough with the requirement specifications of the system and as a user, should know how the system should behave in response to the particular action. Validation Strategies
  • 38. The following are commonly used Black Box methods : • Equivalence partitioning • Boundary-value analysis • Error guessing Black Box testing Methods
  • 39. Part 5: Various Types of Testing Validation is done at two levels • Low Level • Unit testing • Integration Testing • High Level • Function Testing • System Testing • Acceptance Testing Validation Activities
  • 40. • Searches for defect and verifies the functionality of software, depending upon the context of the development • It includes testing of functional and non-functional characteristics • It occurs with access to code being tested and with the support of development environment • Defects are fixed as soon as they are found with out formally recording incident • If test cases are prepared and automated before coding, it is termed as test-first approach or test-driven development. Unit Testing
  • 41. Integration Testing Integration testing tests interface between components, interaction to different parts of system. Greater the scope of Integration, more it becomes to isolate failures to specific component or system, which may leads to increased risk. Integration testing should normally be integral rather than big bang, in order to reduce the risk of late defect discovery Non functional characteristics (e.g. performance) may be included in Integration Testing
  • 42. Function Testing It is used to detect discrepancies between a program’s functional specification and the actual behavior of an application. The goal of function testing is to verify whether your product meets the intended functional specifications laid out the development documentation. When a discrepancy is detected, either the program or the specification is incorrect. All the black box methods are applicable to function based testing
  • 43. It is concerned with the behavior of whole system as defined by the scope of development project It includes both functional and non-functional requirement of system System testing falls within the scope of black box testing. On building the entire system, it needs to be tested against the system specification. An Independent testing team may carry out System Testing System Testing
  • 44.  Usability testing  Performance Testing  Load Testing  Stress Testing  Security Testing  Configuration Testing  Compatibility Testing  Installability Testing  Recovery Testing  Availability Testing  Volume Testing System Testing Types
  • 45. Usability Testing • The typical aim of usability testing is to cause the application to fail to meet its usability requirements so that the underlying defects can be identified, analyzed, fixed, and prevented in the future.  Performance testing is testing to ensure that the application response in the limit set by the user. Performance Testing  Subject the system to extreme pressure in a short span.  E.g Simultaneous log-on of 500 users  Saturation load of transactions Stress Testing
  • 46. Configuration Testing • Configuration testing is the process of checking the operation of the software you are testing with all these various types of hardware. Compatibility Testing  The purpose of compatibility testing is to evaluate how well software performs in a particular hardware, software, operating system, browser or network environment.
  • 47. Acceptance Testing  Acceptance testing may assess the system readiness for deployment and use  The goal is to establish confidence in the system, parts of system or non- functional characteristics of the system  Following are types of Acceptance Testing: • User Acceptance Testing • Operational Testing • Contract and Regulation Acceptance Testing • Alpha and Beta Testing
  • 48. Testing software that has been tested before. • Why? • Peripheral testing for bug fixes • Retesting the old version functionality with the new version Regression Test Why retest?  Because any software product that is actively used and supported must be changed from time to time, and every new version of a product should be retested Retesting
  • 49. Principles of Test Automation # 1: Choose carefully what to automate • Automate tests for highly visible areas • Minimize automating change-prone areas • Between GUI and non-GUI portion automation, go for automating non-GUI portions first • Automate tests for dependencies to catch ripple effects early • Automate areas where multiple combos are possible (pros and cons) • Automate areas that are re-usable • Automate “easy areas” to show low hanging fruits Part 6: Test Automation
  • 50. Principles of Test Automation # 2: Ensure Automation Covers Full Circle Plan Do Check Act • Automatic Analysis • Fish Bone Diagrams • Problem Identification • Test Capture • Test Execution • Results Comparison • Test Planning • Automation Planning • Corrective Action Implementation • Automatic Rollover to next runs • Incorporation into Regression
  • 51. • Compatibility to Platform • Portability across platforms • Integration with TCDB, DR and SCM • 2-way mapping to source code (may not be possible in services) • Scripting Language • Compatible to Multiple Programming Environments • Configurability • Test Case Reusability • Selective Execution • Smart Comparison • Reliable Support • Current documentation Principles of Test Automation # 3: Choose Proper Automation Tool
  • 52. • Resources for Installation • Resources for ongoing execution • People Resources Principles of Test Automation # 4: Plan for Infrastructure
  • 53. • Training • Development • Testing the Tests • Sync-ing with product version changes Principles of Test Automation # 5: Account for Gestation Period
  • 54. • Start small • Don’t try to automate everything at the same time • Allow time for evolving standards Principles of Test Automation # 6: Run a Trial & Calibrate the Tool
  • 55. Config File Scenarios Tools Results Reports/ Metrics Test Framework Test cases Report Generator Execute Read Read Execute Modify Write Read Write Test Automation Components
  • 56. • The work on automation should go in parallel with product development • The requirements for automation spans over to multiple phases for multiple releases like the product requirements • The automation can be carried out in parallel with test design • Sometimes the test cases need to be modified to suit the automation requirements; where automation exist the test cases need not be elaborate • Where a dedicated team exist for automation, the schedule for automation can be independent of product releases, with some (tested) deliverables marked for each product release Process of Test Automation

Editor's Notes

  1. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  2. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  3. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  4. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  5. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  6. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix
  7. The following are lesser used methods Cause effect graphing Syntax testing State transition testing Graph matrix