SlideShare a Scribd company logo
1 of 49
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 What is Testing?
1.2 Why is Testing Necessary?
1.3 Seven Testing Principles
1.4 Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
What is Testing?(K2)
 Common perception is testing is limited to test execution
 Test activities exist before and after test execution as well
 Other activities through out the development lifecycle
 Contributing to reviews
Neeraj Kumar Singh
What is Testing?
Objectives of testing
 Testing is all about
 Finding defects
 Gaining confidence about quality
 Providing information
 Preventing defects
 To evaluate work products
 To verify if all the requirements have been met
 To reduce the level of risk
 To comply with contractual, legal or regulatory requirements and Standards.
Neeraj Kumar Singh
What is Testing?
Classification of testing
Testing
Dynamic
Testing
Static
Testing
Performed as
Reviews & Static
Analysis
Performed as
Levels of Testing
Types of reviews are
Informal Review,
Walkthrough, Technical
Review, Inspection
Levels of testing are
Unit, Integration,
System, UAT and other
Non-functional testing
Neeraj Kumar Singh
What is Testing?
Debugging and Testing
 Testing
Testing deal with finding the defects by conducting failure on the application or
product. This activity is performed by Testers.
 Debugging
Debugging is a development activity which deals with analyzing these defects,
finding the root cause and removes the cause of defects. This activity is
commonly performed by developers.
Neeraj Kumar Singh
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 What is Testing?
1.2 Why is Testing Necessary?
1.3 Seven Testing Principles
1.4 Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
Why is Testing Necessary?
Testing’s Contribution to Success
 Using appropriate test techniques are applied with the appropriate level of
test expertise, in the appropriate test levels, and at the appropriate points in
the software development lifecycle.
 Having testers involved in requirements reviews or user story refinement
could detect defects in these work products.
 Having testers work closely with system designers while the system is being
designed can increase each party’s understanding of the design and how to
test it.
 Having testers work closely with developers while the code is under
development can increase each party’s understanding of the code and how to
test it.
 Having testers verify and validate the software prior to release can detect
failures that might otherwise have been missed, and support the process of
removing the defects that caused the failures (i.e., debugging).
Neeraj Kumar Singh
Why is Testing Necessary?
Quality Assurance and Testing
 While people often use the phrase quality assurance (or just QA) to refer to
testing, quality assurance and testing are not the same, but they are related.
 Quality assurance is typically focused on adherence to proper processes, in
order to provide confidence that the appropriate levels of quality will be
achieved. When processes are carried out properly, the work products created
by those processes are generally of higher quality, which contributes to defect
prevention.
 Quality control involves various activities, including test activities, that
support the achievement of appropriate levels of quality. Test activities are
part of the overall software development or maintenance process.
Neeraj Kumar Singh
Why is Testing Necessary?
Error, Defect & Failures
 Error(Mistake)
A human action that produces an incorrect result
 Fault(Defect, Bug)
A manifestation of an error in software
 also known as a defect or bug
 if executed, a fault may cause a failure
 Failure
Deviation of the software from its expected delivery or service
Neeraj Kumar Singh
Why is Testing Necessary?
Causes of Software Defects
 Errors may occur for many reasons, such as:
 Time pressure
 Human is Error prone
 Inexperienced or insufficiently skilled project participants
 Miscommunication between project participants, including miscommunication about
requirements and design
 Complexity of the code, design, architecture, the underlying problem to be solved,
and/or the technologies used
 Misunderstandings about intra-system and inter-system interfaces, especially when
such intrasystem and inter-system interactions are large in number
 New, unfamiliar technologies
Neeraj Kumar Singh
Why is Testing Necessary?
Defects, Root Causes and Effects
 The root causes of defects are the earliest actions or conditions that
contributed to creating the defects.
 Defects can be analyzed to identify their root causes, so as to reduce the
occurrence of similar defects in the future.
 By focusing on the most significant root causes, root cause analysis can lead to
process improvements that prevent a significant number of future defects from
being introduced.
Neeraj Kumar Singh
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 What is Testing?
1.2 Why is Testing Necessary?
1.3 Seven Testing Principles
1.4 Fundamental Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
Seven Testing Principles
• Testing shows presence of defects.Principle 1
• Exhaustive testing is impossible.Principle 2
• Early testingPrinciple 3
• Defect clusteringPrinciple 4
• Pesticide paradoxPrinciple 5
• Testing context dependentPrinciple 6
• Absence-of-error fallacyPrinciple 7
Neeraj Kumar Singh
Seven Testing Principles
Testing can show that defects are present in a system software, but no matter
whatever count of defects we find, at any point of time we can’t say there no
more defects.
Also to add to it, in case no defects are found, it’s not a proof of correctness.
Testing shows presence of defects, not there absence
Neeraj Kumar Singh
Seven Testing Principles
Testing everything, which means all possible combination of inputs and
preconditions is generally not feasible to be conducted.
As an alternate to exhaustive testing, risk analysis and priorities should be used
to focus on testing efforts .
Exhaustive Testing is impossible
Neeraj Kumar Singh
Seven Testing Principles
To find defects earlier or to prevents defects being introduced, testers must be
involved as early as possible in developments life cycle. Testing activities must
be coordinated with corresponding development activities.
Testers are good contributor in reviews and must participate. This helps them
understand the requirements earlier and prepare test cases earlier in life cycle.
Early Testing saves time and money
Neeraj Kumar Singh
Seven Testing Principles
It is possible that the more defects are clustered in smaller modules compared to
being distributed among bigger and other modules.
In this regards, a tester must consider and prepare proportional test cases to test
such system.
Defects Cluster Together
Neeraj Kumar Singh
Seven Testing Principles
If the same tests are repeated over and over again, eventually the same set of
test cases will no longer help find new defects.
To overcome this “pesticide paradox” test cases need to be regularly reviewed
and revised.
Beware of Pesticide Paradox
Neeraj Kumar Singh
Seven Testing Principles
Testing is done differently in different context.
Two different software are testing with different strategy.
Testing is Context Dependent
Neeraj Kumar Singh
Seven Testing Principles
Meeting the requirement is equally important.
Finding and fixing defect doesn’t help if the system built doesn’t fulfill the users’
need and expectations
Absence-of-Error is a Fallacy
Neeraj Kumar Singh
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 Why is Testing Necessary?
1.2 What is Testing?
1.3 Seven Testing Principles
1.4 Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
Test Process in Context
 Contextual factors that influence the test process for an organization,
include, but are not limited to:
 Software development lifecycle model and project methodologies being used
 Test levels and test types being considered
 Product and project risks
 Business domain
 Operational constraints, (Budgets and resources, Timescales, Complexity,
Contractual and regulatory requirements)
 Organizational policies and practices
 Required internal and external standards
Neeraj Kumar Singh
Test Process
 A test process consists of the following main activities
 Test planning
 Test monitoring and control
 Test analysis
 Test design
 Test implementation
 Test execution
 Test completion
Neeraj Kumar Singh
Test Process
 Test Planning consists of following activaties :
 Determining the scope and risks and identifying the objective of testing.
 Defining the overall approach of testing.
 Scheduling test activities, Assigning resources for the activities.
 Defining the amount, detail, template for documentation.
 Selecting metrics for monitoring and controlling.
 Defining entry and exit criteria.
 Deciding about automation.
Test Planning
Neeraj Kumar Singh
Test Process
 Test Monitoring
 It is process of measuring the progress on the project.
 Test Metrics
 These certain set of formulae which calculates any dimensions(test, defects,
coverage, etc) of testing.
Test Execution Rate :
𝑁𝑜 𝑜𝑓 𝑇𝑒𝑠𝑡 𝐶𝑎𝑠𝑒𝑠 𝐸𝑥𝑒𝑐𝑢𝑡𝑒𝑑
𝑁𝑜 𝑜𝑓 𝑇𝑒𝑠𝑡 𝐶𝑎𝑠𝑒𝑠 𝑃𝑙𝑎𝑛𝑛𝑒𝑑 𝑓𝑜𝑟 𝐸𝑥𝑒𝑐𝑢𝑡𝑖𝑜𝑛
x 100
 Test Control
 Test control involves taking actions necessary to meet the objectives of the test
plan .
Test Monitoring & Control
Neeraj Kumar Singh
Test Process
 Test Analysis includes following major activities:
 Analyzing the Test Basis.
 Evaluating the test basis and test items to identify defects of various types, such as
Ambiguities, Omissions, Inconsistencies, Inaccuracies, etc.
 Identifying features and sets of features to be tested.
 Defining and prioritizing test conditions for each feature based on analysis of the
test basis.
 considering functional, non-functional, and structural characteristics, other
business and technical factors, and levels of risks
Test Analysis
Neeraj Kumar Singh
Test Process
 Test Design includes the following major activities
 Designing and prioritizing Test Cases.
 Identifying necessary Test Data to support the Test Conditions and test cases.
 Designing the test environment and identifying required infrastructure & tools.
 Creating bi-directional traceability between test basis and test cases
Test Design
Neeraj Kumar Singh
Test Process
 Test Implementation includes the following activities
 Developing and prioritizing test procedures, and, potentially, creating automated
test scripts
 Creating test suites from the test procedures and (if any) automated test scripts
 Arranging the test suites within a test execution schedule in a way that results in
efficient test execution
 Building the test environment (including, potentially, test harnesses, service
virtualization, simulators, and other infrastructure items) and verifying that
everything needed has been set up correctly
 Preparing test data and ensuring it is properly loaded in the test environment
Verifying and updating bi-directional traceability between the test basis, test
conditions, test cases, test procedures, and test suites.
Test Implementation
Neeraj Kumar Singh
Test Process
 Test execution includes the following major activities:
 Recording the IDs and versions of the test item(s) or test object, test tool(s), and
testware.
 Executing tests either manually or by using test execution tools
 Comparing actual results with expected results
 Analyzing anomalies to establish their likely causes (e.g., failures may occur due to
defects in the code, but false positives also may occur
 Reporting defects based on the failures observed
 Logging the outcome of test execution (e.g., pass, fail, blocked)
 Repeating test activities either as a result of action taken for an anomaly, or as
part of the planned testing (e.g., execution of a corrected test, confirmation
testing, and/or regression testing)
Test Execution
Neeraj Kumar Singh
Test Process
 Test completion includes the following major activities:
 Checking whether all defect reports are closed, entering change requests or
product backlog items for any defects that remain unresolved at the end of test
execution
 Creating a test summary report to be communicated to stakeholders
 Finalizing and archiving the test environment, the test data, the test
infrastructure, and other testware for later reuse
 Handing over the testware to the maintenance teams, other project teams, and/or
other stakeholders who could benefit from its use
 Analyzing lessons learned from the completed test activities to determine changes
needed for future iterations, releases, and projects
 Using the information gathered to improve test process maturity
Test Completion
Neeraj Kumar Singh
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 What is Testing
1.2 Why is Testing Necessary?
1.3 Seven Testing Principles
1.4 Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
Test Work Products
 Test Planning work products
 Test planning work products typically include one or more test plans. The test
plan includes information about the test basis, to which the other test work
products will be related via traceability information
Neeraj Kumar Singh
Test Work Products
 Test Monitoring and Control work products
 Test monitoring and control work products typically include various types of
test reports, including test progress reports and test summary
 Test monitoring and control work products should also address project
management concerns, such as task completion, resource allocation and
usage, and effort.
Neeraj Kumar Singh
Test Work Products
 Test Analysis work products
 Test analysis work products include defined and prioritized test conditions,
each of which is ideally bidirectionally traceable to the specific element(s) of
the test basis it covers.
 For exploratory testing, test analysis may involve the creation of test
charters.
Neeraj Kumar Singh
Test Work Products
 Test Design work products
 Test design results in test cases and sets of test cases to exercise the test
conditions defined in test analysis.
 Test design also results in the design and/or identification of the necessary
test data, the design of the test environment, and the identification of
infrastructure and tools, though the extent to which these results are
documented varies significantly.
Neeraj Kumar Singh
Test Work Products
 Test Implementation work products
 Test implementation work products include:
 Test procedures and the sequencing of those test procedures
 Test suites
 A test execution schedule
 Test implementation also may result in the creation and verification of test
data and the test environment.
Neeraj Kumar Singh
Test Work Products
 Test Execution work products
 Test execution work products include:
 Documentation of the status of individual test cases or test procedures (e.g., ready
to run, pass, fail, blocked, deliberately skipped, etc.)
 Defect reports
 Documentation about which test item(s), test object(s), test tools, and testware
were involved in the testing
Neeraj Kumar Singh
Test Work Products
 Test Completion work products
 Test completion work products include test summary reports, action items for
improvement of subsequent projects or iterations (e.g., following a project
Agile retrospective), change requests or product backlog items, and finalized
testware.
Neeraj Kumar Singh
Traceability between the Test Basis and
Test Work Products
 In addition to the evaluation of test coverage, good traceability supports:
 Analyzing the impact of changes
 Making testing auditable
 Meeting IT governance criteria
 Improving the understandability of test progress reports and test summary reports
to include the status of elements of the test basis (e.g., requirements that passed
their tests, requirements that failed their tests, and requirements that have
pending tests)
 Relating the technical aspects of testing to stakeholders in terms that they can
understand
 Providing information to assess product quality, process capability, and project
progress against business goals.
Neeraj Kumar Singh
Fundamentals of Testing
1 Fundamentals 2 Lifecycle
4 Dynamic test
techniques
3 Static testing
5 Management 6 Tools
Software Testing
ISTQB Foundation Exam Preparation
Chapter 1
Neeraj Kumar Singh
Fundamentals of Testing
Contents
1.1 What is Testing?
1.2 Why is Testing Necessary?
1.3 Seven Testing Principles
1.4 Fundamental Test Process
1.5 The Psychology of Testing
Neeraj Kumar Singh
Psychology of Testing
Human Psychology and Testing
 An element of human psychology called confirmation bias can make it
difficult to accept information that disagrees with currently held beliefs. For
example, since developers expect their code to be correct, they have a
confirmation bias that makes it difficult to accept that the code is incorrect.
 Further, it is a common human trait to blame the bearer of bad news, and
information produced by testing often contains bad news.
 As a result of these psychological factors, some people may perceive testing
as a destructive activity, even though it contributes greatly to project
progress and product quality
 This way, tensions between the testers and the analysts, product owners,
designers, and developers can be reduced. This applies during both static and
dynamic testing.
Neeraj Kumar Singh
Psychology of Testing
Testers and test managers need to have good interpersonal skills to be able
to communicate effectively about defects, failures, test results, test
progress, and risks, and to build positive relationships with colleagues. Ways
to communicate well include the following examples:
 Start with collaboration rather than battles
 Remind everyone of the common goal of better quality systems.
 Communicate findings on the product in a neutral, fact-focused way without
criticizing the person who created it.
 Try to understand how the other person feels and why they react as they do.
 Confirm that the other person has understood what you have said and vice versa.
Neeraj Kumar Singh
Psychology of Testing
Tester’s and Developer’s Mindset
 Developers and testers often think differently. There are different sets of
objectives for them which require different mindsets.
 A mindset reflects an individual’s assumptions and preferred methods for decision
making and problem solving. A tester’s mindset should include curiosity,
professional pessimism, a critical eye, attention to detail, and a motivation for
good and positive communications and relationships.
 A developer’s mindset may include some of the elements of a tester’s mindset, but
successful developers are often more interested in designing and building solutions
than in contemplating what might be wrong with those solutions. In addition,
confirmation bias makes it difficult to find mistakes in their own work.
 With the right mindset, developers are able to test their own code.
 Having some of the test activities done by independent testers increases defect
detection effectiveness, which is particularly important for large, complex, or
safety-critical systems.
Neeraj Kumar Singh

More Related Content

What's hot

ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level BasicErol Selitektay
 
ISTQB Foundation - Chapter 3
ISTQB Foundation - Chapter 3ISTQB Foundation - Chapter 3
ISTQB Foundation - Chapter 3Chandukar
 
Chapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsChapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsNeeraj Kumar Singh
 
Chapter 2 - Fundamental Agile Testing Principle, Practices & Process
Chapter 2 - Fundamental Agile Testing Principle, Practices & ProcessChapter 2 - Fundamental Agile Testing Principle, Practices & Process
Chapter 2 - Fundamental Agile Testing Principle, Practices & ProcessNeeraj Kumar Singh
 
Chapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingChapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingNeeraj Kumar Singh
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Ankit Prajapati
 
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLINTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLRahul R Pandya
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsNeeraj Kumar Singh
 
What is Test Plan? Edureka
What is Test Plan? EdurekaWhat is Test Plan? Edureka
What is Test Plan? EdurekaEdureka!
 
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 | EdurekaEdureka!
 
Software Testing Process
Software Testing ProcessSoftware Testing Process
Software Testing Processguest1f2740
 

What's hot (20)

ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
ISTQB Foundation - Chapter 3
ISTQB Foundation - Chapter 3ISTQB Foundation - Chapter 3
ISTQB Foundation - Chapter 3
 
Chapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsChapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and Tools
 
ISTQB foundation level - day 2
ISTQB foundation level - day 2ISTQB foundation level - day 2
ISTQB foundation level - day 2
 
Chapter 1 - Agile Methodology
Chapter 1 - Agile MethodologyChapter 1 - Agile Methodology
Chapter 1 - Agile Methodology
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
 
Chapter 2 - Fundamental Agile Testing Principle, Practices & Process
Chapter 2 - Fundamental Agile Testing Principle, Practices & ProcessChapter 2 - Fundamental Agile Testing Principle, Practices & Process
Chapter 2 - Fundamental Agile Testing Principle, Practices & Process
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Chapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingChapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical Testing
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Manual testing
Manual testingManual testing
Manual testing
 
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLINTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
 
Chapter 2 - Test Management
Chapter 2 - Test ManagementChapter 2 - Test Management
Chapter 2 - Test Management
 
Software testing
Software testingSoftware testing
Software testing
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality Characteristics
 
What is Test Plan? Edureka
What is Test Plan? EdurekaWhat is Test Plan? Edureka
What is Test Plan? Edureka
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
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
 
Software Testing Process
Software Testing ProcessSoftware Testing Process
Software Testing Process
 

Similar to Fundamentals of Software Testing

ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testingHoangThiHien1
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testingTricia Karina
 
ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5Yogindernath Gupta
 
What is the Objective of Software Testing?
What is the Objective of Software Testing?What is the Objective of Software Testing?
What is the Objective of Software Testing?seojayeshts
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testingBugRaptors
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWJournal For Research
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance Webtech Learning
 
Principles and Goals of Software Testing
Principles and Goals of Software Testing Principles and Goals of Software Testing
Principles and Goals of Software Testing INFOGAIN PUBLICATION
 
Chapter -5 Agile Testing types and its examples.pptx
Chapter -5 Agile Testing types and its examples.pptxChapter -5 Agile Testing types and its examples.pptx
Chapter -5 Agile Testing types and its examples.pptxManishaPatil932723
 
Fundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxFundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxMusaBashir9
 
The Essential Guide to Software Testing.pdf
The Essential Guide to Software Testing.pdfThe Essential Guide to Software Testing.pdf
The Essential Guide to Software Testing.pdfKajal Digital
 
Examining test coverage in software testing (1)
Examining test coverage in software testing (1)Examining test coverage in software testing (1)
Examining test coverage in software testing (1)get joys
 

Similar to Fundamentals of Software Testing (20)

Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
 
ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5
 
What is the Objective of Software Testing?
What is the Objective of Software Testing?What is the Objective of Software Testing?
What is the Objective of Software Testing?
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
Static Techniques
Static TechniquesStatic Techniques
Static Techniques
 
Testing Software
Testing SoftwareTesting Software
Testing Software
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Principles and Goals of Software Testing
Principles and Goals of Software Testing Principles and Goals of Software Testing
Principles and Goals of Software Testing
 
Chapter 2 - Test Management
Chapter 2 - Test ManagementChapter 2 - Test Management
Chapter 2 - Test Management
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Chapter -5 Agile Testing types and its examples.pptx
Chapter -5 Agile Testing types and its examples.pptxChapter -5 Agile Testing types and its examples.pptx
Chapter -5 Agile Testing types and its examples.pptx
 
Fundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxFundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptx
 
The Essential Guide to Software Testing.pdf
The Essential Guide to Software Testing.pdfThe Essential Guide to Software Testing.pdf
The Essential Guide to Software Testing.pdf
 
CTFL chapter 05
CTFL chapter 05CTFL chapter 05
CTFL chapter 05
 
Examining test coverage in software testing (1)
Examining test coverage in software testing (1)Examining test coverage in software testing (1)
Examining test coverage in software testing (1)
 

More from Neeraj Kumar Singh

Chapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionChapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionNeeraj Kumar Singh
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentNeeraj Kumar Singh
 
Chapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsChapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsNeeraj Kumar Singh
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesNeeraj Kumar Singh
 
Chapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversChapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversNeeraj Kumar Singh
 
ISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsNeeraj Kumar Singh
 
ISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersNeeraj Kumar Singh
 
ISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialNeeraj Kumar Singh
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksNeeraj Kumar Singh
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleNeeraj Kumar Singh
 
Chapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsChapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsNeeraj Kumar Singh
 
Chapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionChapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionNeeraj Kumar Singh
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationNeeraj Kumar Singh
 
Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing ProcessNeeraj Kumar Singh
 
ISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperNeeraj Kumar Singh
 
ISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperNeeraj Kumar Singh
 

More from Neeraj Kumar Singh (20)

Chapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionChapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test Execution
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
 
Chapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsChapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile Applications
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test Types
 
Chapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversChapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology Drivers
 
ISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample Questions
 
ISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' Answers
 
ISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study Material
 
Chapter 5 - Tools
Chapter 5 - ToolsChapter 5 - Tools
Chapter 5 - Tools
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing Tasks
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software Lifecycle
 
Chapter 1 - Basic Concepts
Chapter 1 - Basic ConceptsChapter 1 - Basic Concepts
Chapter 1 - Basic Concepts
 
Chapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsChapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement Fundamentals
 
Chapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionChapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team Composition
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and Automation
 
Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing Process
 
Chapter 4 - Defect Management
Chapter 4 - Defect ManagementChapter 4 - Defect Management
Chapter 4 - Defect Management
 
Chapter 3 - Reviews
Chapter 3 - ReviewsChapter 3 - Reviews
Chapter 3 - Reviews
 
ISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question Paper
 
ISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question Paper
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

Fundamentals of Software Testing

  • 1. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 2. Fundamentals of Testing Contents 1.1 What is Testing? 1.2 Why is Testing Necessary? 1.3 Seven Testing Principles 1.4 Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 3. What is Testing?(K2)  Common perception is testing is limited to test execution  Test activities exist before and after test execution as well  Other activities through out the development lifecycle  Contributing to reviews Neeraj Kumar Singh
  • 4. What is Testing? Objectives of testing  Testing is all about  Finding defects  Gaining confidence about quality  Providing information  Preventing defects  To evaluate work products  To verify if all the requirements have been met  To reduce the level of risk  To comply with contractual, legal or regulatory requirements and Standards. Neeraj Kumar Singh
  • 5. What is Testing? Classification of testing Testing Dynamic Testing Static Testing Performed as Reviews & Static Analysis Performed as Levels of Testing Types of reviews are Informal Review, Walkthrough, Technical Review, Inspection Levels of testing are Unit, Integration, System, UAT and other Non-functional testing Neeraj Kumar Singh
  • 6. What is Testing? Debugging and Testing  Testing Testing deal with finding the defects by conducting failure on the application or product. This activity is performed by Testers.  Debugging Debugging is a development activity which deals with analyzing these defects, finding the root cause and removes the cause of defects. This activity is commonly performed by developers. Neeraj Kumar Singh
  • 7. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 8. Fundamentals of Testing Contents 1.1 What is Testing? 1.2 Why is Testing Necessary? 1.3 Seven Testing Principles 1.4 Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 9. Why is Testing Necessary? Testing’s Contribution to Success  Using appropriate test techniques are applied with the appropriate level of test expertise, in the appropriate test levels, and at the appropriate points in the software development lifecycle.  Having testers involved in requirements reviews or user story refinement could detect defects in these work products.  Having testers work closely with system designers while the system is being designed can increase each party’s understanding of the design and how to test it.  Having testers work closely with developers while the code is under development can increase each party’s understanding of the code and how to test it.  Having testers verify and validate the software prior to release can detect failures that might otherwise have been missed, and support the process of removing the defects that caused the failures (i.e., debugging). Neeraj Kumar Singh
  • 10. Why is Testing Necessary? Quality Assurance and Testing  While people often use the phrase quality assurance (or just QA) to refer to testing, quality assurance and testing are not the same, but they are related.  Quality assurance is typically focused on adherence to proper processes, in order to provide confidence that the appropriate levels of quality will be achieved. When processes are carried out properly, the work products created by those processes are generally of higher quality, which contributes to defect prevention.  Quality control involves various activities, including test activities, that support the achievement of appropriate levels of quality. Test activities are part of the overall software development or maintenance process. Neeraj Kumar Singh
  • 11. Why is Testing Necessary? Error, Defect & Failures  Error(Mistake) A human action that produces an incorrect result  Fault(Defect, Bug) A manifestation of an error in software  also known as a defect or bug  if executed, a fault may cause a failure  Failure Deviation of the software from its expected delivery or service Neeraj Kumar Singh
  • 12. Why is Testing Necessary? Causes of Software Defects  Errors may occur for many reasons, such as:  Time pressure  Human is Error prone  Inexperienced or insufficiently skilled project participants  Miscommunication between project participants, including miscommunication about requirements and design  Complexity of the code, design, architecture, the underlying problem to be solved, and/or the technologies used  Misunderstandings about intra-system and inter-system interfaces, especially when such intrasystem and inter-system interactions are large in number  New, unfamiliar technologies Neeraj Kumar Singh
  • 13. Why is Testing Necessary? Defects, Root Causes and Effects  The root causes of defects are the earliest actions or conditions that contributed to creating the defects.  Defects can be analyzed to identify their root causes, so as to reduce the occurrence of similar defects in the future.  By focusing on the most significant root causes, root cause analysis can lead to process improvements that prevent a significant number of future defects from being introduced. Neeraj Kumar Singh
  • 14. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 15. Fundamentals of Testing Contents 1.1 What is Testing? 1.2 Why is Testing Necessary? 1.3 Seven Testing Principles 1.4 Fundamental Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 16. Seven Testing Principles • Testing shows presence of defects.Principle 1 • Exhaustive testing is impossible.Principle 2 • Early testingPrinciple 3 • Defect clusteringPrinciple 4 • Pesticide paradoxPrinciple 5 • Testing context dependentPrinciple 6 • Absence-of-error fallacyPrinciple 7 Neeraj Kumar Singh
  • 17. Seven Testing Principles Testing can show that defects are present in a system software, but no matter whatever count of defects we find, at any point of time we can’t say there no more defects. Also to add to it, in case no defects are found, it’s not a proof of correctness. Testing shows presence of defects, not there absence Neeraj Kumar Singh
  • 18. Seven Testing Principles Testing everything, which means all possible combination of inputs and preconditions is generally not feasible to be conducted. As an alternate to exhaustive testing, risk analysis and priorities should be used to focus on testing efforts . Exhaustive Testing is impossible Neeraj Kumar Singh
  • 19. Seven Testing Principles To find defects earlier or to prevents defects being introduced, testers must be involved as early as possible in developments life cycle. Testing activities must be coordinated with corresponding development activities. Testers are good contributor in reviews and must participate. This helps them understand the requirements earlier and prepare test cases earlier in life cycle. Early Testing saves time and money Neeraj Kumar Singh
  • 20. Seven Testing Principles It is possible that the more defects are clustered in smaller modules compared to being distributed among bigger and other modules. In this regards, a tester must consider and prepare proportional test cases to test such system. Defects Cluster Together Neeraj Kumar Singh
  • 21. Seven Testing Principles If the same tests are repeated over and over again, eventually the same set of test cases will no longer help find new defects. To overcome this “pesticide paradox” test cases need to be regularly reviewed and revised. Beware of Pesticide Paradox Neeraj Kumar Singh
  • 22. Seven Testing Principles Testing is done differently in different context. Two different software are testing with different strategy. Testing is Context Dependent Neeraj Kumar Singh
  • 23. Seven Testing Principles Meeting the requirement is equally important. Finding and fixing defect doesn’t help if the system built doesn’t fulfill the users’ need and expectations Absence-of-Error is a Fallacy Neeraj Kumar Singh
  • 24. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 25. Fundamentals of Testing Contents 1.1 Why is Testing Necessary? 1.2 What is Testing? 1.3 Seven Testing Principles 1.4 Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 26. Test Process in Context  Contextual factors that influence the test process for an organization, include, but are not limited to:  Software development lifecycle model and project methodologies being used  Test levels and test types being considered  Product and project risks  Business domain  Operational constraints, (Budgets and resources, Timescales, Complexity, Contractual and regulatory requirements)  Organizational policies and practices  Required internal and external standards Neeraj Kumar Singh
  • 27. Test Process  A test process consists of the following main activities  Test planning  Test monitoring and control  Test analysis  Test design  Test implementation  Test execution  Test completion Neeraj Kumar Singh
  • 28. Test Process  Test Planning consists of following activaties :  Determining the scope and risks and identifying the objective of testing.  Defining the overall approach of testing.  Scheduling test activities, Assigning resources for the activities.  Defining the amount, detail, template for documentation.  Selecting metrics for monitoring and controlling.  Defining entry and exit criteria.  Deciding about automation. Test Planning Neeraj Kumar Singh
  • 29. Test Process  Test Monitoring  It is process of measuring the progress on the project.  Test Metrics  These certain set of formulae which calculates any dimensions(test, defects, coverage, etc) of testing. Test Execution Rate : 𝑁𝑜 𝑜𝑓 𝑇𝑒𝑠𝑡 𝐶𝑎𝑠𝑒𝑠 𝐸𝑥𝑒𝑐𝑢𝑡𝑒𝑑 𝑁𝑜 𝑜𝑓 𝑇𝑒𝑠𝑡 𝐶𝑎𝑠𝑒𝑠 𝑃𝑙𝑎𝑛𝑛𝑒𝑑 𝑓𝑜𝑟 𝐸𝑥𝑒𝑐𝑢𝑡𝑖𝑜𝑛 x 100  Test Control  Test control involves taking actions necessary to meet the objectives of the test plan . Test Monitoring & Control Neeraj Kumar Singh
  • 30. Test Process  Test Analysis includes following major activities:  Analyzing the Test Basis.  Evaluating the test basis and test items to identify defects of various types, such as Ambiguities, Omissions, Inconsistencies, Inaccuracies, etc.  Identifying features and sets of features to be tested.  Defining and prioritizing test conditions for each feature based on analysis of the test basis.  considering functional, non-functional, and structural characteristics, other business and technical factors, and levels of risks Test Analysis Neeraj Kumar Singh
  • 31. Test Process  Test Design includes the following major activities  Designing and prioritizing Test Cases.  Identifying necessary Test Data to support the Test Conditions and test cases.  Designing the test environment and identifying required infrastructure & tools.  Creating bi-directional traceability between test basis and test cases Test Design Neeraj Kumar Singh
  • 32. Test Process  Test Implementation includes the following activities  Developing and prioritizing test procedures, and, potentially, creating automated test scripts  Creating test suites from the test procedures and (if any) automated test scripts  Arranging the test suites within a test execution schedule in a way that results in efficient test execution  Building the test environment (including, potentially, test harnesses, service virtualization, simulators, and other infrastructure items) and verifying that everything needed has been set up correctly  Preparing test data and ensuring it is properly loaded in the test environment Verifying and updating bi-directional traceability between the test basis, test conditions, test cases, test procedures, and test suites. Test Implementation Neeraj Kumar Singh
  • 33. Test Process  Test execution includes the following major activities:  Recording the IDs and versions of the test item(s) or test object, test tool(s), and testware.  Executing tests either manually or by using test execution tools  Comparing actual results with expected results  Analyzing anomalies to establish their likely causes (e.g., failures may occur due to defects in the code, but false positives also may occur  Reporting defects based on the failures observed  Logging the outcome of test execution (e.g., pass, fail, blocked)  Repeating test activities either as a result of action taken for an anomaly, or as part of the planned testing (e.g., execution of a corrected test, confirmation testing, and/or regression testing) Test Execution Neeraj Kumar Singh
  • 34. Test Process  Test completion includes the following major activities:  Checking whether all defect reports are closed, entering change requests or product backlog items for any defects that remain unresolved at the end of test execution  Creating a test summary report to be communicated to stakeholders  Finalizing and archiving the test environment, the test data, the test infrastructure, and other testware for later reuse  Handing over the testware to the maintenance teams, other project teams, and/or other stakeholders who could benefit from its use  Analyzing lessons learned from the completed test activities to determine changes needed for future iterations, releases, and projects  Using the information gathered to improve test process maturity Test Completion Neeraj Kumar Singh
  • 35. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 36. Fundamentals of Testing Contents 1.1 What is Testing 1.2 Why is Testing Necessary? 1.3 Seven Testing Principles 1.4 Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 37. Test Work Products  Test Planning work products  Test planning work products typically include one or more test plans. The test plan includes information about the test basis, to which the other test work products will be related via traceability information Neeraj Kumar Singh
  • 38. Test Work Products  Test Monitoring and Control work products  Test monitoring and control work products typically include various types of test reports, including test progress reports and test summary  Test monitoring and control work products should also address project management concerns, such as task completion, resource allocation and usage, and effort. Neeraj Kumar Singh
  • 39. Test Work Products  Test Analysis work products  Test analysis work products include defined and prioritized test conditions, each of which is ideally bidirectionally traceable to the specific element(s) of the test basis it covers.  For exploratory testing, test analysis may involve the creation of test charters. Neeraj Kumar Singh
  • 40. Test Work Products  Test Design work products  Test design results in test cases and sets of test cases to exercise the test conditions defined in test analysis.  Test design also results in the design and/or identification of the necessary test data, the design of the test environment, and the identification of infrastructure and tools, though the extent to which these results are documented varies significantly. Neeraj Kumar Singh
  • 41. Test Work Products  Test Implementation work products  Test implementation work products include:  Test procedures and the sequencing of those test procedures  Test suites  A test execution schedule  Test implementation also may result in the creation and verification of test data and the test environment. Neeraj Kumar Singh
  • 42. Test Work Products  Test Execution work products  Test execution work products include:  Documentation of the status of individual test cases or test procedures (e.g., ready to run, pass, fail, blocked, deliberately skipped, etc.)  Defect reports  Documentation about which test item(s), test object(s), test tools, and testware were involved in the testing Neeraj Kumar Singh
  • 43. Test Work Products  Test Completion work products  Test completion work products include test summary reports, action items for improvement of subsequent projects or iterations (e.g., following a project Agile retrospective), change requests or product backlog items, and finalized testware. Neeraj Kumar Singh
  • 44. Traceability between the Test Basis and Test Work Products  In addition to the evaluation of test coverage, good traceability supports:  Analyzing the impact of changes  Making testing auditable  Meeting IT governance criteria  Improving the understandability of test progress reports and test summary reports to include the status of elements of the test basis (e.g., requirements that passed their tests, requirements that failed their tests, and requirements that have pending tests)  Relating the technical aspects of testing to stakeholders in terms that they can understand  Providing information to assess product quality, process capability, and project progress against business goals. Neeraj Kumar Singh
  • 45. Fundamentals of Testing 1 Fundamentals 2 Lifecycle 4 Dynamic test techniques 3 Static testing 5 Management 6 Tools Software Testing ISTQB Foundation Exam Preparation Chapter 1 Neeraj Kumar Singh
  • 46. Fundamentals of Testing Contents 1.1 What is Testing? 1.2 Why is Testing Necessary? 1.3 Seven Testing Principles 1.4 Fundamental Test Process 1.5 The Psychology of Testing Neeraj Kumar Singh
  • 47. Psychology of Testing Human Psychology and Testing  An element of human psychology called confirmation bias can make it difficult to accept information that disagrees with currently held beliefs. For example, since developers expect their code to be correct, they have a confirmation bias that makes it difficult to accept that the code is incorrect.  Further, it is a common human trait to blame the bearer of bad news, and information produced by testing often contains bad news.  As a result of these psychological factors, some people may perceive testing as a destructive activity, even though it contributes greatly to project progress and product quality  This way, tensions between the testers and the analysts, product owners, designers, and developers can be reduced. This applies during both static and dynamic testing. Neeraj Kumar Singh
  • 48. Psychology of Testing Testers and test managers need to have good interpersonal skills to be able to communicate effectively about defects, failures, test results, test progress, and risks, and to build positive relationships with colleagues. Ways to communicate well include the following examples:  Start with collaboration rather than battles  Remind everyone of the common goal of better quality systems.  Communicate findings on the product in a neutral, fact-focused way without criticizing the person who created it.  Try to understand how the other person feels and why they react as they do.  Confirm that the other person has understood what you have said and vice versa. Neeraj Kumar Singh
  • 49. Psychology of Testing Tester’s and Developer’s Mindset  Developers and testers often think differently. There are different sets of objectives for them which require different mindsets.  A mindset reflects an individual’s assumptions and preferred methods for decision making and problem solving. A tester’s mindset should include curiosity, professional pessimism, a critical eye, attention to detail, and a motivation for good and positive communications and relationships.  A developer’s mindset may include some of the elements of a tester’s mindset, but successful developers are often more interested in designing and building solutions than in contemplating what might be wrong with those solutions. In addition, confirmation bias makes it difficult to find mistakes in their own work.  With the right mindset, developers are able to test their own code.  Having some of the test activities done by independent testers increases defect detection effectiveness, which is particularly important for large, complex, or safety-critical systems. Neeraj Kumar Singh