SlideShare a Scribd company logo
1 of 104
Dr. Pallawi Bulakh
M.Sc.M.Phil.Ph.D.NET with JRF
Contents
 2.1 Static Testing/ Dynamic Testing
 2.2 Regression/ Retesting
 2.3 Usability/ accessibility
 2.4 Smoke / Sanity testing
 2.5 Unit Testing/ Integration Testing/ System Testing
 2.6 UAT – Alpha Testing /Beta Testing
 2.7 White Box/Black box testing
 2.8 Functional/Non-functional Testing
 2.9 Performance Testing
 2.10 Load Testing
 2.11 Stress Testing
 2.12 Penetration Testing
 2.13 Cross platform / Cross device testing
Static Testing/ Dynamic Testing
 Static testing is a software testing technique that
involves evaluating a software application's code,
requirements, and design without executing the
program.
 static testing focuses on identifying defects,
inconsistencies, and potential issues through a
thorough review of the software artifacts.
static testing
 Static testing is a verification process used to test the
application without implementing the code of the
application. And it is a cost-effective process.
 To avoid the errors, we will execute Static testing in the
initial stage of development because it is easier to
identify the sources of errors, and it can fix easily.
Need for static testing
 Detection of Bugs/ Flaws at earlier stages –
 Increased size of software –
 Dynamic Testing is time-consuming –
 Dynamic Testing is expensive
Benefits:
 Early Defect Detection: Static testing identifies issues
before code execution, reducing the cost and effort
required for later-stage bug fixing.
 Improved Quality: Identifying and rectifying defects
early results in higher-quality software.
 Knowledge Sharing: Team members can learn from each
other's work and perspectives during the review process.
 Process Improvement: Static testing helps identify areas
where processes, coding standards, or documentation
templates can be improved.
Types of static testing
Review
 In static testing review is a process or technique that is
performed to find the potential defects in the design of
the software.
 It is process to detect and remove errors and defects in
the different supporting documents like software
requirements specifications.
 People examine the documents and sorted out errors,
redundancies and ambiguities. Review is of four types:
Software Inspection
 Inspection process is performed in the earlier stages of
the SLDC and is applied to a specific part of product
like SRS, code, product design. etc.
 It involves manually examining the various
components of the product at the earlier stages.
 The software inspection process comprises six phases
which are as follows :

Walkthrough:
 It is basically performed by experienced person or
expert to check the defects so that there might not be
problem further in the development or testing phase.
Informal:
 In informal review the creator of the documents put
the contents in front of audience and everyone gives
their opinion and thus defects are identified in the
early stage.
Peer review:
 Peer review means checking documents of one-
another to detect and fix the defects. It is basically
done in a team of colleagues.
Challenges:
 Time and Resources: Conducting thorough static
testing requires time and resources, which may impact
project schedules.
 Subjectivity: Interpretation of code and design may
vary among team members, leading to differing
opinions on issues.
 Resistance: Developers might resist code reviews,
considering them as slowing down their development
process.
Static Analysis:
 Static Analysis includes the evaluation of the code
quality that is written by developers.
 Different tools are used to do the analysis of the code
and comparison of the same with the standard. It also
helps in following identification of following defects:
 (a) Unused variables (b) Dead code (c) Infinite loops
(d) Variable with undefined value (e) Wrong syntax
Data Flow:
 Data flow is related to the stream processing.
Control Flow:
 Control flow is basically how the statements or
instructions are executed.
Cyclomatic Complexity:
 Cyclomatic complexity defines the number of
independent paths in the control flow graph made
from the code or flowchart so that minimum number
of test cases can be designed for each independent
path.
Dynamic Testing
 Dynamic testing is a software testing technique that
involves evaluating the behavior of a program or
system while it's running.
 This type of testing focuses on assessing the software's
performance, responsiveness, stability, and
functionality under various conditions.
 Dynamic testing is generally performed by executing
the software and observing its behavior in real-time.
Key aspects
 Execution: In dynamic testing, the software is
executed with input data, and its output is compared
against expected outcomes. This allows testers to verify
whether the actual behavior matches the intended
behavior.
 Functional Testing: Dynamic testing encompasses
various types of testing, including functional testing,
where the software's features and functions are tested
against the requirements specified in the design or
user documentation.
 Non-functional Testing: Dynamic testing also
includes non-functional testing, which focuses on
aspects like performance, load, stress, and security.
These tests evaluate how well the software performs
under different conditions and stress levels.
 Automation: Dynamic testing can be automated
using testing tools and frameworks. Automated tests
can repeat the same actions with different inputs and
compare the results with expected outcomes
efficiently.
Key aspects
Key aspects
 Black Box Testing: Dynamic testing is often
associated with black-box testing, where testers focus
on evaluating the software's external behavior without
necessarily knowing its internal implementation
details.
 White Box Testing: However, dynamic testing can
also involve white-box testing, which considers the
internal logic and code structure of the software. This
is sometimes referred to as code-based testing.
Types of Dynamic Testing
 Some common types of dynamic testing include unit
testing, integration testing, system testing, regression
testing, performance testing, load testing, stress
testing, security testing, and usability testing.
Benefits:
 Dynamic testing helps identify bugs, defects, and
vulnerabilities in the software by simulating real-world
usage scenarios. It provides valuable insights into how
the software behaves in different situations.
Challenges
 Dynamic testing may not uncover all defects, and it's
often not feasible to test every possible scenario. It
requires a good understanding of the software's
behavior and potential issues that may arise.
Iterative Process:
 Dynamic testing is typically performed iteratively
throughout the software development lifecycle. As the
software evolves, different testing techniques are
applied to ensure its reliability and quality.
Summary
 dynamic testing plays a crucial role in ensuring the
quality and functionality of software applications by
assessing their behavior in real-world scenarios.
 It complements other testing techniques, such as static
testing, which involves reviewing code and
documentation without executing the software.
Regression Testing
 Regression testing is a type of software testing that
focuses on verifying that new code changes or updates
to a software application do not negatively impact the
existing functionality of the system.
 The primary goal of regression testing is to ensure that
new changes do not introduce new bugs, defects, or
errors while maintaining the integrity of the software.
Purpose:
 The purpose of regression testing is to detect any
unintended side effects caused by new code changes.
 It ensures that modifications to the software do not
break existing features or functionalities.
When can we perform Regression
Testing?
 When new functionality added to the application.
 When there is a Change Requirement.
 When the defect fixed
 When there is a performance issue fixed..
 When there is an environment change
Re–Testing:
 Re-testing is a testing technique that is used to verify that
defects that were found in a software system have been
fixed correctly.
 This technique involves retesting a specific part of the
software that was previously identified as having a defect.
 Re-testing is typically performed after a bug has been
fixed, and the software has been reworked to address the
defect.
 The objective of re-testing is to ensure that the specific
issue that was previously identified has been resolved and
the software now works as expected.
Usability/accessibility testing
 Usability testing is a method of testing the
functionality of a website, app, or other digital product
by observing real users as they attempt to complete
tasks on it.
 The users are usually observed by researchers working
for a business during either an in-person or, more
commonly, a remote usability testing session.
Usability cycle
 the product is ready,
 customers are asked to test it,
 if found any further changes,
 product (software) is returned to the development
team with feedback to update the changes,
 again the software had to run usability testing,
 if there’re no more changes required,
 the software is launched in the market.
Usability testing Phases
Techniques/Methods of Usability
Testing
 Guerilla Testing
 It is a type of testing where testers wander to public
places and ask random users about the prototype.
Also, a thank gift is offered to the users as a gesture of
token. It is the best way to perform usability testing
during the early phases of the product development
process.
 Usability Lab
 Usability lab testing is conducted in a lab environment
where moderators (who ask for feedback on the
product) hire participants and ask them to take a
survey on the product. This test is performed on a
tablet/desktop.
 Screen or Video Recording
 Screen or video recording kind of testing is in which a
screen is recorded as per the user’s action (navigation
and usage of the product). This testing describes how
the user’s mind runs while using a product.
Need for Usability Testing
 Usability testing provides some benefits and the main
benefit and purpose of usability testing are to identify
usability problems with a design as early as possible, so
they can be fixed before the design is implemented or
mass produced and then such, usability testing is often
conducted on prototypes rather than finished
products, with different levels of fidelity depending on
the development phase.
Accessibility Testing
 Accessibility testing is another type of software
testing used to test the application from the physically
challenged person's point of view.
 Here the physical disability could be old age, hearing,
color blindness, and other underprivileged groups.
 It is also known as 508 compliance testing.
 In this, we will test a web application to ensure that
every user can access the website
Accessibility Testing
The Law for Accessibility testing:
 Web content accessibility guidelines: These
strategies are established to serve a purpose, which
helps us to increase the user-friendliness of a website.
 Rehabilitation Act, section 504, and section 508:
 Section 504: This section will help people with
disabilities by providing workspace access, education,
and other organizations.
 Section 508: Section 508 will help those people by
giving access to technology.
Purpose of Accessibility testing
Purpose of Accessibility testing
 Hearing Deficiency: In this, the person is not able to hear or
hear clearly and has sensory issues such as hearing disabilities
and deafness.
 Learning Impairment: The people who are facing reading
difficulties.
 Physical Disabilities: In this type of disability, the people are
not capable of using the Keyboard or the Mouse with one hand
and facing the problem in hand activities, muscle detention, and
reduced motor abilities.
 Visual Impairments: The visual or vision disabilities define
that when a person has complete blindness, poor vision abilities,
color blindness, and flashing effect problems and visual strobe.
 Cognitive Deficiency: In this, the person will have poor
memory, not able to recognize more complex scenarios, and
learning difficulties.
Manual accessibility testing
 Modifying the font size to large: We can use the large font size
and check the availability.
 Testing for captions: Here, we will test that a caption should be
visible and also ensure that it is expressive. As we know that
while we are accessing the Facebook application, sometimes the
images and videos take lots of time to load, where the captions
will help us to understand what is in the pictures and video.
 By deactivating the style: We can disable the method and test
if the content of the table is accurately lined up or not.
 We can use high contrast mode: If we can use high-contrast
mode, we can highlight the website's content. When we turn the
high contrast mode in our windows, the content of the site gets
highlighted automatically as it turns into white or yellow, and the
background turns black.
Smoke testing
 The purpose of smoke testing is to determine whether
the build software is testable or not.
 The focus of Smoke Testing is on the workflow of the
core and primary functions of the application.
 Testing the basic & critical feature of an application
before doing one round of deep, rigorous testing
(before checking all possible positive and negative
values) is known as smoke testing.
 Smoke testing does not require to design test cases.
 “Built verification testing”
Smoke testing
Advantages of smoke testing
 It is a time-saving process.
 In the early stage, we can find the bugs.
 It will help to recover the quality of the system, which
decreases the risk.
 It is easy testing to perform because it saves our test
effort and time.
Sanity testing
 Sanity testing is a type of software testing that aims to
quickly evaluate whether the basic functionality of a
new software build is working correctly or not.
 It is usually performed on builds that are in the initial
stages of development, before the full regression
testing is performed.
 Generally, Sanity testing is performed on stable builds
and it is also known as a variant of regression testing.
 “Surface level testing”
Sanity testing
 The primary aim of executing the sanity testing is to
define that the planned features work unevenly as
expected. If the sanity test fails, the build is refused to
save the costs and time complexity in more severe
testing.
 The execution of sanity testing makes sure that new
modifications don't change the software's current
functionalities.
 It also validates the accuracy of the newly added
features and components.
Advantages of Sanity Testing
 It helps us to find any deployment or compilation
issues.
 It is less expensive as compared to other types of
software testing.
 It helps in rapidly finding the bugs in the core
functionality.
 There is no documentation mandatory for sanity
testing, that's why it can be executed in lesser time
Unit testing
 In a testing level hierarchy, unit testing is the first level
of testing done before integration and other remaining
levels of the testing.
 It uses modules for the testing process which reduces
the dependency of waiting for Unit testing
frameworks, stubs, drivers and mock objects are used
for assistance in unit testing.

Unit testing
Unit testing
 Unit testing helps tester and developers to understand
the base of code that makes them able to change defect
causing code quickly.
 Unit testing helps in the documentation.
 Unit testing fixes defects very early in the development
phase that's why there is a possibility to occur a smaller
number of defects in upcoming testing levels.
 It helps with code reusability by migrating code and
test cases.
Advantages of Unit testing
 Unit testing uses module approach due to that any
part can be tested without waiting for completion of
another parts testing.
 The developing team focuses on the provided
functionality of the unit and how functionality should
look in unit test suits to understand the unit API.
 Unit testing allows the developer to refactor code after
a number of days and ensure the module still working
without any defect.
Disadvantages
 It cannot identify integration or broad level error as it
works on units of the code.
 In the unit testing, evaluation of all execution paths is
not possible, so unit testing is not able to catch each
and every error in a program.
 It is best suitable for conjunction with other testing
activities.
Integration testing
 Integration testing is the second level of the software
testing process comes after unit testing.
 In this testing, units or individual components of the
software are tested in a group.
 The focus of the integration testing level is to expose
defects at the time of interaction between integrated
components or units.
Integration testing
Integration testing types
Incremental approach
 In the Incremental Approach, modules
are added in ascending order one by
one or according to need.
 The selected modules must be
logically related. Generally, two or
more than two modules are added and
tested to determine the correctness of
functions.
 The process continues until the
successful testing of all the modules.
Top down approach
 The top-down testing strategy
deals with the process in which
higher level modules are tested
with lower level modules until
the successful completion of
testing of all the modules.
 Major design flaws can be
detected and fixed early because
critical modules tested first.
 In this type of method, we will
add the modules incrementally or
one by one and check the data
flow in the same order.
Top down approach
 Advantages:
 Identification of defect is difficult.
 An early prototype is possible.
 Disadvantages:
 Due to the high number of stubs, it gets quite
complicated.
 Lower level modules are tested inadequately.
 Critical Modules are tested first so that fewer chances
of defects.
Bottom up approach
 In the bottom-up method, we will ensure that the
modules we are adding are the parent of the
previous one as we can see in the below image:

Bottom up approach
 Advantages
 Identification of defect is easy.
 Do not need to wait for the development of all the
modules as it saves time.
 Disadvantages
 Critical modules are tested last due to which the
defects can occur.
 There is no possibility of an early prototype.
Non Incremental method
 We will go for this method, when the data flow is very
complex and when it is difficult to find who is a parent
and who is a child.
 And in such case, we will create the data in any
module bang on all other existing modules and check
if the data is present. Hence, it is also known as
the Big bang method
Big bang method
 In this approach, testing is done
via integration of all modules at
once.
 It is convenient for small
software systems, if used for large
software systems identification of
defects is difficult.
 Since this testing can be done
after completion of all modules
due to that testing team has less
time for execution of this process
so that internally linked
interfaces and high-risk critical
modules can be missed easily.
Big bang approach
 Advantages:
 It is convenient for small size software systems.
 Disadvantages:
 Identification of defects is difficult because finding the
error where it came from is a problem, and we don't
know the source of the bug.
 Small modules missed easily.
 Time provided for testing is very less.
 We may miss to test some of the interfaces.
System testing
 System Testing includes testing of a fully integrated
software system.
 The software is developed in units and then interfaced
with other software and hardware to create a complete
computer system.
 To check the end-to-end flow of an application or the
software as a user is known as System testing
 It is end-to-end testing where the testing
environment is similar to the production environment
System testing
 System testing falls under Black box testing as it
includes testing of the external working of the
software.
 Testing follows user's perspective to identify minor
defects.
Steps in system testing
 Verification of input functions of the application to
test whether it is producing the expected output or
not.
 Testing of integrated software by including external
peripherals to check the interaction of various
components with each other.
 Testing of the whole system for End to End testing.
 Behavior testing of the application via auser's
experience
Types of system testing
User Acceptance Testing
 User acceptance testing (UAT) is an important phase
of the software development process that verifies
whether a product or software is fit for the purpose it
was built for in the first place.
 It also checks weather the system
 Fulfills business requirements
 Provides a good user experience (UX) for end-users
UAT
Purpose of User Acceptance
Testing
 Ensure that the software is user-friendly and easy to
use.
 Identify any defects or bugs that need to be fixed
before deployment.
 Verify that the software meets the requirements and
specifications of the end-users or client and is suitable
for its intended purpose.
 Confirm that the software is ready for deployment.
Types of User Acceptance Tests
 Alpha testing: This type of test is typically conducted
by a small group of internal users, and is used to
identify any major issues with the software before it is
released to a larger group of users.
 Beta testing: This type of test is typically conducted by
a group of external users and is used to identify any
remaining issues with the software before it is released
to the general public.
Alpha testing
 Alpha testing takes place at the developer's site by the
internal teams, before release to external customers.
 This testing is performed without the involvement of the
development teams.
 In the first phase of alpha testing, the software is tested by
in-house developers during which the goal is to catch bugs
quickly.
 In the second phase of alpha testing, the software is given
to the software QA team for additional testing.
 Alpha testing is often performed for Commercial off-the-
shelf software (COTS) as a form of internal acceptance
testing, before the beta testing is performed.
Beta testing
 Beta testing also known as user testing takes place at
the end users site by the end users to validate the
usability, functionality, compatibility, and reliability
testing.
 Beta testing adds value to the software development
life cycle as it allows the "real" customer an
opportunity to provide inputs into the design,
functionality, and usability of a product
 These inputs are not only critical to the success of the
product but also an investment into future products
when the gathered data is managed effectively.
Factors that depends on the
success of beta testing:
 Test Cost
 Number of Test Participants
 Shipping
 Duration of Test
 Demographic coverage
Difference between Alpha and Beta testing
Difference contd..
White box testing
 White box testing is a testing technique, that examines
the program structure and derives test data from the
program logic/code.
 White box testing is a software testing technique that
involves testing the internal structure and workings of
a software application.
 The tester has access to the source code and uses this
knowledge to design test cases that can verify the
correctness of the software at the code level
Working process of white box
testing:
 Input: Requirements, Functional specifications,
design documents, source code.
 Processing: Performing risk analysis to guide through
the entire process.
 Proper test planning: Designing test cases so as to
cover the entire code. Execute rinse-repeat until error-
free software is reached. Also, the results are
communicated.
 Output: Preparing final report of the entire testing
process.
Features of white box testing:
 Code coverage analysis: White box testing helps to
analyze the code coverage of an application, which helps to
identify the areas of the code that are not being tested.
 Access to the source code: White box testing requires
access to the application’s source code, which makes it
possible to test individual functions, methods, and
modules.
 Knowledge of programming languages: Testers
performing white box testing must have knowledge of
programming languages like Java, C++, Python, and PHP to
understand the code structure and write tests.
 Identifying logical errors: White box testing helps
to identify logical errors in the code, such as infinite
loops or incorrect conditional statements.
 Integration testing: White box testing is useful for
integration testing, as it allows testers to verify that the
different components of an application are working
together as expected.
 Unit testing: White box testing is also used for unit
testing, which involves testing individual units of code
to ensure that they are working correctly.
Features of white box testing:
 Optimization of code: White box testing can help to
optimize the code by identifying any performance
issues, redundant code, or other areas that can be
improved.
 Security testing: White box testing can also be used
for security testing, as it allows testers to identify any
vulnerabilities in the application’s code.
Features of white box testing:
Advantages:
 White box testing is thorough as the entire code and
structures are tested.
 It results in the optimization of code removing errors
and helps in removing extra lines of code.
 It can start at an earlier stage as it doesn’t require any
interface as in the case of black box testing.
 Easy to automate.
 White box testing can be easily started in Software
Development Life Cycle.
 Easy Code Optimization.
Black box testing
Black Box testing
 Black box testing is a technique of software testing
which examines the functionality of software without
peering into its internal structure or coding.
 The primary source of black box testing is a
specification of requirements that is stated by the
customer.
Black Box testing
 In this method, tester selects a function and gives
input value to examine its functionality, and checks
whether the function is giving expected output or not.
 If the function produces correct output, then it is
passed in testing, otherwise failed.
Black Box testing steps
 The black box test is based on the specification of requirements,
so it is examined in the beginning.
 In the second step, the tester creates a positive test scenario and
an adverse test scenario by selecting valid and invalid input
values to check that the software is processing them correctly or
incorrectly.
 In the third step, the tester develops various test cases such as
decision table, all pairs test, equivalent division, error
estimation, cause-effect graph, etc.
 The fourth phase includes the execution of all test cases.
 In the fifth step, the tester compares the expected output against
the actual output.
 In the sixth and final step, if there is any flaw in the software,
then it is cured and tested again.
Functional testing
 It is a type of software testing which is used to verify
the functionality of the software application, whether
the function is working according to the requirement
specification.
 In functional testing, each function tested by giving
the value, determining the output, and verifying the
actual output with the expected value.
Functional testing
Functional Testing
 Functional testing performed as black-box testing
which is presented to confirm that the functionality of
an application or system behaves as we are expecting.
It is done to verify the functionality of the application.
 Functional testing also called as black-box testing,
because it focuses on application specification rather
than actual code. Tester has to test only the program
rather than the system.
Goal of functional testing
 The purpose of the functional testing is to check the
primary entry function, necessarily usable function,
the flow of screen GUI.
 Functional testing displays the error message so that
the user can easily navigate throughout the
application.
process of functional testing?
 Tester does verification of the requirement specification in
the software application.
 After analysis, the requirement specification tester will
make a plan.
 After planning the tests, the tester will design the test case.
 After designing the test, case tester will make a document of
the traceability matrix.
 The tester will execute the test case design.
 Analysis of the coverage to examine the covered testing area
of the application.
 Defect management should do to manage defect resolving.
advantages of Functional Testing?
 It produces a defect-free product.
 It ensures that the customer is satisfied.
 It ensures that all requirements met.
 It ensures the proper working of all the functionality of
an application/software/product.
 It ensures that the software/ product work as expected.
 It ensures security and safety.
 It improves the quality of the product.
Disadvantages of functional
testing?
 Functional testing can miss a critical and logical error
in the system.
 This testing is not a guarantee of the software to go
live.
 The possibility of conducting redundant testing is
high in functional testing.
Non functional testing
 Non-functional testing is a type of software testing to
test non-functional parameters such as reliability, load
test, performance and accountability of the software.
 The primary purpose of non-functional testing is to
test the reading speed of the software system as per
non-functional parameters.
 The parameters of non-functional testing are never
tested before the functional testing.
Why Non-Functional Testing
 Non-Functional testing checks the ability to work in
an external environment.
 It sets the way for software installation, setup, and
execution. The measurement and metrics used for
internal research and development are collected and
produced under non-functional testing.
 Non-functional testing gives detailed knowledge of
product behavior and used technologies. It helps in
reducing the risk of production and associated costs of
the software.
Performance testing
 Performance Testing eliminates the reason behind the
slow and limited performance of the software.
 Reading speed of the software should be as fast as
possible.
 For Performance Testing, a well-structured and clear
specification about expected speed must be defined.
Otherwise, the outcome of the test (Success or Failure)
will not be obvious.

Load Testing
 Load testing involves testing the system's loading
capacity. Loading capacity means more and more
people can work on the system simultaneously.

Stress testing
 Stress Testing is testing used to check the accessibility and
robustness of software beyond usual functional limits. It
mainly considers for critical software but it can also be used
for all types of software applications.
 It is also known as Endurance Testing, fatigue
testing or Torture Testing.
 The stress testing includes the testing beyond standard
operational size, repeatedly to a breaking point, to get
the outputs.
 It highlights the error handling and robustness under a
heavy load instead of correct behavior under regular
conditions.
Penetration testing
 Penetration testing serves as a pro-active measure to
try identify vulnerabilities in services and
organizations before other attackers can.
 Penetration testing serves as a pro-active measure to
try identify vulnerabilities in services and
organizations before other attackers can
Cross platform testing
 When we have to test our application on multiple
browsers, we need cross-browser testing tools. These
tools will help us to ensure that our web application is
working fine across the various browsers.
 This tool will take place when both server-side and
client-side are accessing the web application in
multiple web browsers.
References
 https://www.geeksforgeeks.org/software-testing-
dynamic-testing/
 https://www.javatpoint.com/sanity-testing

More Related Content

What's hot

System testing ppt
System testing pptSystem testing ppt
System testing pptL ESHWAR
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycleNikhil Sharma
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSachithra Gayan
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSaqib Raza
 
Ch3-Software Engineering 9
Ch3-Software Engineering 9Ch3-Software Engineering 9
Ch3-Software Engineering 9Ian Sommerville
 
Software evolution and Verification,validation
Software evolution and Verification,validationSoftware evolution and Verification,validation
Software evolution and Verification,validationArchanaMani2
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answersMehul Chauhan
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 
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!
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9Ian Sommerville
 
Acceptance testing
Acceptance testingAcceptance testing
Acceptance testingCOEPD HR
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Groupsuwalki24.pl
 

What's hot (20)

System testing ppt
System testing pptSystem testing ppt
System testing ppt
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle
 
Software Testing or Quality Assurance
Software Testing or Quality AssuranceSoftware Testing or Quality Assurance
Software Testing or Quality Assurance
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Ch3. agile sw dev
Ch3. agile sw devCh3. agile sw dev
Ch3. agile sw dev
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Ch3-Software Engineering 9
Ch3-Software Engineering 9Ch3-Software Engineering 9
Ch3-Software Engineering 9
 
Software evolution and Verification,validation
Software evolution and Verification,validationSoftware evolution and Verification,validation
Software evolution and Verification,validation
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answers
 
SDLC vs STLC
SDLC vs STLCSDLC vs STLC
SDLC vs STLC
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
verification and validation
verification and validationverification and validation
verification and validation
 
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
Software TestingSoftware Testing
Software Testing
 
SDLC
SDLCSDLC
SDLC
 
How to report bugs
How to report bugsHow to report bugs
How to report bugs
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9
 
Acceptance testing
Acceptance testingAcceptance testing
Acceptance testing
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 

Similar to UNIT 2.pptx

Software Testing
Software TestingSoftware Testing
Software TestingSengu Msc
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingVenkat Alagarsamy
 
black and white Box testing.pptx
black and white Box testing.pptxblack and white Box testing.pptx
black and white Box testing.pptxPavanNikhil3
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing senguSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Manual testing
Manual testingManual testing
Manual testingVivek V
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.Vinay Agnihotri
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineeringSweta Kumari Barnwal
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGacemindia
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing ConceptsPoojaLQA
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software EngineeringMuhammadTalha436
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx8759000398
 
Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual TestingHiral Gosani
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1FAIZALSAIYED
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance Webtech Learning
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingRajesh-QA
 

Similar to UNIT 2.pptx (20)

Software Testing
Software TestingSoftware Testing
Software Testing
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
black and white Box testing.pptx
black and white Box testing.pptxblack and white Box testing.pptx
black and white Box testing.pptx
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing sengu
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Manual testing
Manual testingManual testing
Manual testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Manual testing
Manual testingManual testing
Manual testing
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing Concepts
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual Testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 

More from PallawiBulakh1

Research Methodology UNIT 4.pptx
Research Methodology UNIT 4.pptxResearch Methodology UNIT 4.pptx
Research Methodology UNIT 4.pptxPallawiBulakh1
 
Research Methodology UNIT 3.pptx
Research Methodology UNIT 3.pptxResearch Methodology UNIT 3.pptx
Research Methodology UNIT 3.pptxPallawiBulakh1
 
Research Methodology UNIT 2.pptx
Research Methodology UNIT 2.pptxResearch Methodology UNIT 2.pptx
Research Methodology UNIT 2.pptxPallawiBulakh1
 
Research Methodology UNIT 1.pptx
Research Methodology UNIT 1.pptxResearch Methodology UNIT 1.pptx
Research Methodology UNIT 1.pptxPallawiBulakh1
 
Introduction to web technology
Introduction to web technologyIntroduction to web technology
Introduction to web technologyPallawiBulakh1
 
How to write and publish good quality research paper
How to write and publish good quality research paperHow to write and publish good quality research paper
How to write and publish good quality research paperPallawiBulakh1
 

More from PallawiBulakh1 (12)

ch13.ppt
ch13.pptch13.ppt
ch13.ppt
 
RM UNIT 6.pptx
RM UNIT 6.pptxRM UNIT 6.pptx
RM UNIT 6.pptx
 
RM UNIT 5.pptx
RM UNIT 5.pptxRM UNIT 5.pptx
RM UNIT 5.pptx
 
Research Methodology UNIT 4.pptx
Research Methodology UNIT 4.pptxResearch Methodology UNIT 4.pptx
Research Methodology UNIT 4.pptx
 
Research Methodology UNIT 3.pptx
Research Methodology UNIT 3.pptxResearch Methodology UNIT 3.pptx
Research Methodology UNIT 3.pptx
 
Research Methodology UNIT 2.pptx
Research Methodology UNIT 2.pptxResearch Methodology UNIT 2.pptx
Research Methodology UNIT 2.pptx
 
Research Methodology UNIT 1.pptx
Research Methodology UNIT 1.pptxResearch Methodology UNIT 1.pptx
Research Methodology UNIT 1.pptx
 
Msword module 3
Msword  module 3Msword  module 3
Msword module 3
 
Ms word module 2
Ms word  module 2Ms word  module 2
Ms word module 2
 
Introduction to web technology
Introduction to web technologyIntroduction to web technology
Introduction to web technology
 
Ms word module 1
Ms word module 1Ms word module 1
Ms word module 1
 
How to write and publish good quality research paper
How to write and publish good quality research paperHow to write and publish good quality research paper
How to write and publish good quality research paper
 

Recently uploaded

Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 

Recently uploaded (20)

9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 

UNIT 2.pptx

  • 2. Contents  2.1 Static Testing/ Dynamic Testing  2.2 Regression/ Retesting  2.3 Usability/ accessibility  2.4 Smoke / Sanity testing  2.5 Unit Testing/ Integration Testing/ System Testing  2.6 UAT – Alpha Testing /Beta Testing  2.7 White Box/Black box testing  2.8 Functional/Non-functional Testing  2.9 Performance Testing  2.10 Load Testing  2.11 Stress Testing  2.12 Penetration Testing  2.13 Cross platform / Cross device testing
  • 3. Static Testing/ Dynamic Testing  Static testing is a software testing technique that involves evaluating a software application's code, requirements, and design without executing the program.  static testing focuses on identifying defects, inconsistencies, and potential issues through a thorough review of the software artifacts.
  • 4. static testing  Static testing is a verification process used to test the application without implementing the code of the application. And it is a cost-effective process.  To avoid the errors, we will execute Static testing in the initial stage of development because it is easier to identify the sources of errors, and it can fix easily.
  • 5. Need for static testing  Detection of Bugs/ Flaws at earlier stages –  Increased size of software –  Dynamic Testing is time-consuming –  Dynamic Testing is expensive
  • 6. Benefits:  Early Defect Detection: Static testing identifies issues before code execution, reducing the cost and effort required for later-stage bug fixing.  Improved Quality: Identifying and rectifying defects early results in higher-quality software.  Knowledge Sharing: Team members can learn from each other's work and perspectives during the review process.  Process Improvement: Static testing helps identify areas where processes, coding standards, or documentation templates can be improved.
  • 7. Types of static testing
  • 8. Review  In static testing review is a process or technique that is performed to find the potential defects in the design of the software.  It is process to detect and remove errors and defects in the different supporting documents like software requirements specifications.  People examine the documents and sorted out errors, redundancies and ambiguities. Review is of four types:
  • 9. Software Inspection  Inspection process is performed in the earlier stages of the SLDC and is applied to a specific part of product like SRS, code, product design. etc.  It involves manually examining the various components of the product at the earlier stages.  The software inspection process comprises six phases which are as follows : 
  • 10. Walkthrough:  It is basically performed by experienced person or expert to check the defects so that there might not be problem further in the development or testing phase.
  • 11. Informal:  In informal review the creator of the documents put the contents in front of audience and everyone gives their opinion and thus defects are identified in the early stage.
  • 12. Peer review:  Peer review means checking documents of one- another to detect and fix the defects. It is basically done in a team of colleagues.
  • 13. Challenges:  Time and Resources: Conducting thorough static testing requires time and resources, which may impact project schedules.  Subjectivity: Interpretation of code and design may vary among team members, leading to differing opinions on issues.  Resistance: Developers might resist code reviews, considering them as slowing down their development process.
  • 14. Static Analysis:  Static Analysis includes the evaluation of the code quality that is written by developers.  Different tools are used to do the analysis of the code and comparison of the same with the standard. It also helps in following identification of following defects:  (a) Unused variables (b) Dead code (c) Infinite loops (d) Variable with undefined value (e) Wrong syntax
  • 15. Data Flow:  Data flow is related to the stream processing.
  • 16. Control Flow:  Control flow is basically how the statements or instructions are executed.
  • 17. Cyclomatic Complexity:  Cyclomatic complexity defines the number of independent paths in the control flow graph made from the code or flowchart so that minimum number of test cases can be designed for each independent path.
  • 18. Dynamic Testing  Dynamic testing is a software testing technique that involves evaluating the behavior of a program or system while it's running.  This type of testing focuses on assessing the software's performance, responsiveness, stability, and functionality under various conditions.  Dynamic testing is generally performed by executing the software and observing its behavior in real-time.
  • 19. Key aspects  Execution: In dynamic testing, the software is executed with input data, and its output is compared against expected outcomes. This allows testers to verify whether the actual behavior matches the intended behavior.  Functional Testing: Dynamic testing encompasses various types of testing, including functional testing, where the software's features and functions are tested against the requirements specified in the design or user documentation.
  • 20.  Non-functional Testing: Dynamic testing also includes non-functional testing, which focuses on aspects like performance, load, stress, and security. These tests evaluate how well the software performs under different conditions and stress levels.  Automation: Dynamic testing can be automated using testing tools and frameworks. Automated tests can repeat the same actions with different inputs and compare the results with expected outcomes efficiently. Key aspects
  • 21. Key aspects  Black Box Testing: Dynamic testing is often associated with black-box testing, where testers focus on evaluating the software's external behavior without necessarily knowing its internal implementation details.  White Box Testing: However, dynamic testing can also involve white-box testing, which considers the internal logic and code structure of the software. This is sometimes referred to as code-based testing.
  • 22. Types of Dynamic Testing  Some common types of dynamic testing include unit testing, integration testing, system testing, regression testing, performance testing, load testing, stress testing, security testing, and usability testing.
  • 23. Benefits:  Dynamic testing helps identify bugs, defects, and vulnerabilities in the software by simulating real-world usage scenarios. It provides valuable insights into how the software behaves in different situations.
  • 24. Challenges  Dynamic testing may not uncover all defects, and it's often not feasible to test every possible scenario. It requires a good understanding of the software's behavior and potential issues that may arise.
  • 25. Iterative Process:  Dynamic testing is typically performed iteratively throughout the software development lifecycle. As the software evolves, different testing techniques are applied to ensure its reliability and quality.
  • 26. Summary  dynamic testing plays a crucial role in ensuring the quality and functionality of software applications by assessing their behavior in real-world scenarios.  It complements other testing techniques, such as static testing, which involves reviewing code and documentation without executing the software.
  • 27.
  • 28. Regression Testing  Regression testing is a type of software testing that focuses on verifying that new code changes or updates to a software application do not negatively impact the existing functionality of the system.  The primary goal of regression testing is to ensure that new changes do not introduce new bugs, defects, or errors while maintaining the integrity of the software.
  • 29. Purpose:  The purpose of regression testing is to detect any unintended side effects caused by new code changes.  It ensures that modifications to the software do not break existing features or functionalities.
  • 30. When can we perform Regression Testing?  When new functionality added to the application.  When there is a Change Requirement.  When the defect fixed  When there is a performance issue fixed..  When there is an environment change
  • 31. Re–Testing:  Re-testing is a testing technique that is used to verify that defects that were found in a software system have been fixed correctly.  This technique involves retesting a specific part of the software that was previously identified as having a defect.  Re-testing is typically performed after a bug has been fixed, and the software has been reworked to address the defect.  The objective of re-testing is to ensure that the specific issue that was previously identified has been resolved and the software now works as expected.
  • 32. Usability/accessibility testing  Usability testing is a method of testing the functionality of a website, app, or other digital product by observing real users as they attempt to complete tasks on it.  The users are usually observed by researchers working for a business during either an in-person or, more commonly, a remote usability testing session.
  • 33. Usability cycle  the product is ready,  customers are asked to test it,  if found any further changes,  product (software) is returned to the development team with feedback to update the changes,  again the software had to run usability testing,  if there’re no more changes required,  the software is launched in the market.
  • 35. Techniques/Methods of Usability Testing  Guerilla Testing  It is a type of testing where testers wander to public places and ask random users about the prototype. Also, a thank gift is offered to the users as a gesture of token. It is the best way to perform usability testing during the early phases of the product development process.
  • 36.  Usability Lab  Usability lab testing is conducted in a lab environment where moderators (who ask for feedback on the product) hire participants and ask them to take a survey on the product. This test is performed on a tablet/desktop.
  • 37.  Screen or Video Recording  Screen or video recording kind of testing is in which a screen is recorded as per the user’s action (navigation and usage of the product). This testing describes how the user’s mind runs while using a product.
  • 38. Need for Usability Testing  Usability testing provides some benefits and the main benefit and purpose of usability testing are to identify usability problems with a design as early as possible, so they can be fixed before the design is implemented or mass produced and then such, usability testing is often conducted on prototypes rather than finished products, with different levels of fidelity depending on the development phase.
  • 39. Accessibility Testing  Accessibility testing is another type of software testing used to test the application from the physically challenged person's point of view.  Here the physical disability could be old age, hearing, color blindness, and other underprivileged groups.  It is also known as 508 compliance testing.  In this, we will test a web application to ensure that every user can access the website
  • 41. The Law for Accessibility testing:  Web content accessibility guidelines: These strategies are established to serve a purpose, which helps us to increase the user-friendliness of a website.  Rehabilitation Act, section 504, and section 508:  Section 504: This section will help people with disabilities by providing workspace access, education, and other organizations.  Section 508: Section 508 will help those people by giving access to technology.
  • 43. Purpose of Accessibility testing  Hearing Deficiency: In this, the person is not able to hear or hear clearly and has sensory issues such as hearing disabilities and deafness.  Learning Impairment: The people who are facing reading difficulties.  Physical Disabilities: In this type of disability, the people are not capable of using the Keyboard or the Mouse with one hand and facing the problem in hand activities, muscle detention, and reduced motor abilities.  Visual Impairments: The visual or vision disabilities define that when a person has complete blindness, poor vision abilities, color blindness, and flashing effect problems and visual strobe.  Cognitive Deficiency: In this, the person will have poor memory, not able to recognize more complex scenarios, and learning difficulties.
  • 44. Manual accessibility testing  Modifying the font size to large: We can use the large font size and check the availability.  Testing for captions: Here, we will test that a caption should be visible and also ensure that it is expressive. As we know that while we are accessing the Facebook application, sometimes the images and videos take lots of time to load, where the captions will help us to understand what is in the pictures and video.  By deactivating the style: We can disable the method and test if the content of the table is accurately lined up or not.  We can use high contrast mode: If we can use high-contrast mode, we can highlight the website's content. When we turn the high contrast mode in our windows, the content of the site gets highlighted automatically as it turns into white or yellow, and the background turns black.
  • 45. Smoke testing  The purpose of smoke testing is to determine whether the build software is testable or not.  The focus of Smoke Testing is on the workflow of the core and primary functions of the application.  Testing the basic & critical feature of an application before doing one round of deep, rigorous testing (before checking all possible positive and negative values) is known as smoke testing.  Smoke testing does not require to design test cases.  “Built verification testing”
  • 47. Advantages of smoke testing  It is a time-saving process.  In the early stage, we can find the bugs.  It will help to recover the quality of the system, which decreases the risk.  It is easy testing to perform because it saves our test effort and time.
  • 48. Sanity testing  Sanity testing is a type of software testing that aims to quickly evaluate whether the basic functionality of a new software build is working correctly or not.  It is usually performed on builds that are in the initial stages of development, before the full regression testing is performed.  Generally, Sanity testing is performed on stable builds and it is also known as a variant of regression testing.  “Surface level testing”
  • 49. Sanity testing  The primary aim of executing the sanity testing is to define that the planned features work unevenly as expected. If the sanity test fails, the build is refused to save the costs and time complexity in more severe testing.  The execution of sanity testing makes sure that new modifications don't change the software's current functionalities.  It also validates the accuracy of the newly added features and components.
  • 50. Advantages of Sanity Testing  It helps us to find any deployment or compilation issues.  It is less expensive as compared to other types of software testing.  It helps in rapidly finding the bugs in the core functionality.  There is no documentation mandatory for sanity testing, that's why it can be executed in lesser time
  • 51. Unit testing  In a testing level hierarchy, unit testing is the first level of testing done before integration and other remaining levels of the testing.  It uses modules for the testing process which reduces the dependency of waiting for Unit testing frameworks, stubs, drivers and mock objects are used for assistance in unit testing. 
  • 53. Unit testing  Unit testing helps tester and developers to understand the base of code that makes them able to change defect causing code quickly.  Unit testing helps in the documentation.  Unit testing fixes defects very early in the development phase that's why there is a possibility to occur a smaller number of defects in upcoming testing levels.  It helps with code reusability by migrating code and test cases.
  • 54. Advantages of Unit testing  Unit testing uses module approach due to that any part can be tested without waiting for completion of another parts testing.  The developing team focuses on the provided functionality of the unit and how functionality should look in unit test suits to understand the unit API.  Unit testing allows the developer to refactor code after a number of days and ensure the module still working without any defect.
  • 55. Disadvantages  It cannot identify integration or broad level error as it works on units of the code.  In the unit testing, evaluation of all execution paths is not possible, so unit testing is not able to catch each and every error in a program.  It is best suitable for conjunction with other testing activities.
  • 56. Integration testing  Integration testing is the second level of the software testing process comes after unit testing.  In this testing, units or individual components of the software are tested in a group.  The focus of the integration testing level is to expose defects at the time of interaction between integrated components or units.
  • 59. Incremental approach  In the Incremental Approach, modules are added in ascending order one by one or according to need.  The selected modules must be logically related. Generally, two or more than two modules are added and tested to determine the correctness of functions.  The process continues until the successful testing of all the modules.
  • 60. Top down approach  The top-down testing strategy deals with the process in which higher level modules are tested with lower level modules until the successful completion of testing of all the modules.  Major design flaws can be detected and fixed early because critical modules tested first.  In this type of method, we will add the modules incrementally or one by one and check the data flow in the same order.
  • 61. Top down approach  Advantages:  Identification of defect is difficult.  An early prototype is possible.  Disadvantages:  Due to the high number of stubs, it gets quite complicated.  Lower level modules are tested inadequately.  Critical Modules are tested first so that fewer chances of defects.
  • 62. Bottom up approach  In the bottom-up method, we will ensure that the modules we are adding are the parent of the previous one as we can see in the below image: 
  • 63. Bottom up approach  Advantages  Identification of defect is easy.  Do not need to wait for the development of all the modules as it saves time.  Disadvantages  Critical modules are tested last due to which the defects can occur.  There is no possibility of an early prototype.
  • 64. Non Incremental method  We will go for this method, when the data flow is very complex and when it is difficult to find who is a parent and who is a child.  And in such case, we will create the data in any module bang on all other existing modules and check if the data is present. Hence, it is also known as the Big bang method
  • 65. Big bang method  In this approach, testing is done via integration of all modules at once.  It is convenient for small software systems, if used for large software systems identification of defects is difficult.  Since this testing can be done after completion of all modules due to that testing team has less time for execution of this process so that internally linked interfaces and high-risk critical modules can be missed easily.
  • 66. Big bang approach  Advantages:  It is convenient for small size software systems.  Disadvantages:  Identification of defects is difficult because finding the error where it came from is a problem, and we don't know the source of the bug.  Small modules missed easily.  Time provided for testing is very less.  We may miss to test some of the interfaces.
  • 67. System testing  System Testing includes testing of a fully integrated software system.  The software is developed in units and then interfaced with other software and hardware to create a complete computer system.  To check the end-to-end flow of an application or the software as a user is known as System testing  It is end-to-end testing where the testing environment is similar to the production environment
  • 68. System testing  System testing falls under Black box testing as it includes testing of the external working of the software.  Testing follows user's perspective to identify minor defects.
  • 69. Steps in system testing  Verification of input functions of the application to test whether it is producing the expected output or not.  Testing of integrated software by including external peripherals to check the interaction of various components with each other.  Testing of the whole system for End to End testing.  Behavior testing of the application via auser's experience
  • 70. Types of system testing
  • 71. User Acceptance Testing  User acceptance testing (UAT) is an important phase of the software development process that verifies whether a product or software is fit for the purpose it was built for in the first place.  It also checks weather the system  Fulfills business requirements  Provides a good user experience (UX) for end-users
  • 72. UAT
  • 73. Purpose of User Acceptance Testing  Ensure that the software is user-friendly and easy to use.  Identify any defects or bugs that need to be fixed before deployment.  Verify that the software meets the requirements and specifications of the end-users or client and is suitable for its intended purpose.  Confirm that the software is ready for deployment.
  • 74. Types of User Acceptance Tests  Alpha testing: This type of test is typically conducted by a small group of internal users, and is used to identify any major issues with the software before it is released to a larger group of users.  Beta testing: This type of test is typically conducted by a group of external users and is used to identify any remaining issues with the software before it is released to the general public.
  • 75. Alpha testing  Alpha testing takes place at the developer's site by the internal teams, before release to external customers.  This testing is performed without the involvement of the development teams.  In the first phase of alpha testing, the software is tested by in-house developers during which the goal is to catch bugs quickly.  In the second phase of alpha testing, the software is given to the software QA team for additional testing.  Alpha testing is often performed for Commercial off-the- shelf software (COTS) as a form of internal acceptance testing, before the beta testing is performed.
  • 76. Beta testing  Beta testing also known as user testing takes place at the end users site by the end users to validate the usability, functionality, compatibility, and reliability testing.  Beta testing adds value to the software development life cycle as it allows the "real" customer an opportunity to provide inputs into the design, functionality, and usability of a product  These inputs are not only critical to the success of the product but also an investment into future products when the gathered data is managed effectively.
  • 77. Factors that depends on the success of beta testing:  Test Cost  Number of Test Participants  Shipping  Duration of Test  Demographic coverage
  • 78. Difference between Alpha and Beta testing
  • 80. White box testing  White box testing is a testing technique, that examines the program structure and derives test data from the program logic/code.  White box testing is a software testing technique that involves testing the internal structure and workings of a software application.  The tester has access to the source code and uses this knowledge to design test cases that can verify the correctness of the software at the code level
  • 81. Working process of white box testing:  Input: Requirements, Functional specifications, design documents, source code.  Processing: Performing risk analysis to guide through the entire process.  Proper test planning: Designing test cases so as to cover the entire code. Execute rinse-repeat until error- free software is reached. Also, the results are communicated.  Output: Preparing final report of the entire testing process.
  • 82. Features of white box testing:  Code coverage analysis: White box testing helps to analyze the code coverage of an application, which helps to identify the areas of the code that are not being tested.  Access to the source code: White box testing requires access to the application’s source code, which makes it possible to test individual functions, methods, and modules.  Knowledge of programming languages: Testers performing white box testing must have knowledge of programming languages like Java, C++, Python, and PHP to understand the code structure and write tests.
  • 83.  Identifying logical errors: White box testing helps to identify logical errors in the code, such as infinite loops or incorrect conditional statements.  Integration testing: White box testing is useful for integration testing, as it allows testers to verify that the different components of an application are working together as expected.  Unit testing: White box testing is also used for unit testing, which involves testing individual units of code to ensure that they are working correctly. Features of white box testing:
  • 84.  Optimization of code: White box testing can help to optimize the code by identifying any performance issues, redundant code, or other areas that can be improved.  Security testing: White box testing can also be used for security testing, as it allows testers to identify any vulnerabilities in the application’s code. Features of white box testing:
  • 85. Advantages:  White box testing is thorough as the entire code and structures are tested.  It results in the optimization of code removing errors and helps in removing extra lines of code.  It can start at an earlier stage as it doesn’t require any interface as in the case of black box testing.  Easy to automate.  White box testing can be easily started in Software Development Life Cycle.  Easy Code Optimization.
  • 87. Black Box testing  Black box testing is a technique of software testing which examines the functionality of software without peering into its internal structure or coding.  The primary source of black box testing is a specification of requirements that is stated by the customer.
  • 88. Black Box testing  In this method, tester selects a function and gives input value to examine its functionality, and checks whether the function is giving expected output or not.  If the function produces correct output, then it is passed in testing, otherwise failed.
  • 89. Black Box testing steps  The black box test is based on the specification of requirements, so it is examined in the beginning.  In the second step, the tester creates a positive test scenario and an adverse test scenario by selecting valid and invalid input values to check that the software is processing them correctly or incorrectly.  In the third step, the tester develops various test cases such as decision table, all pairs test, equivalent division, error estimation, cause-effect graph, etc.  The fourth phase includes the execution of all test cases.  In the fifth step, the tester compares the expected output against the actual output.  In the sixth and final step, if there is any flaw in the software, then it is cured and tested again.
  • 90. Functional testing  It is a type of software testing which is used to verify the functionality of the software application, whether the function is working according to the requirement specification.  In functional testing, each function tested by giving the value, determining the output, and verifying the actual output with the expected value.
  • 92. Functional Testing  Functional testing performed as black-box testing which is presented to confirm that the functionality of an application or system behaves as we are expecting. It is done to verify the functionality of the application.  Functional testing also called as black-box testing, because it focuses on application specification rather than actual code. Tester has to test only the program rather than the system.
  • 93. Goal of functional testing  The purpose of the functional testing is to check the primary entry function, necessarily usable function, the flow of screen GUI.  Functional testing displays the error message so that the user can easily navigate throughout the application.
  • 94. process of functional testing?  Tester does verification of the requirement specification in the software application.  After analysis, the requirement specification tester will make a plan.  After planning the tests, the tester will design the test case.  After designing the test, case tester will make a document of the traceability matrix.  The tester will execute the test case design.  Analysis of the coverage to examine the covered testing area of the application.  Defect management should do to manage defect resolving.
  • 95. advantages of Functional Testing?  It produces a defect-free product.  It ensures that the customer is satisfied.  It ensures that all requirements met.  It ensures the proper working of all the functionality of an application/software/product.  It ensures that the software/ product work as expected.  It ensures security and safety.  It improves the quality of the product.
  • 96. Disadvantages of functional testing?  Functional testing can miss a critical and logical error in the system.  This testing is not a guarantee of the software to go live.  The possibility of conducting redundant testing is high in functional testing.
  • 97. Non functional testing  Non-functional testing is a type of software testing to test non-functional parameters such as reliability, load test, performance and accountability of the software.  The primary purpose of non-functional testing is to test the reading speed of the software system as per non-functional parameters.  The parameters of non-functional testing are never tested before the functional testing.
  • 98. Why Non-Functional Testing  Non-Functional testing checks the ability to work in an external environment.  It sets the way for software installation, setup, and execution. The measurement and metrics used for internal research and development are collected and produced under non-functional testing.  Non-functional testing gives detailed knowledge of product behavior and used technologies. It helps in reducing the risk of production and associated costs of the software.
  • 99. Performance testing  Performance Testing eliminates the reason behind the slow and limited performance of the software.  Reading speed of the software should be as fast as possible.  For Performance Testing, a well-structured and clear specification about expected speed must be defined. Otherwise, the outcome of the test (Success or Failure) will not be obvious. 
  • 100. Load Testing  Load testing involves testing the system's loading capacity. Loading capacity means more and more people can work on the system simultaneously. 
  • 101. Stress testing  Stress Testing is testing used to check the accessibility and robustness of software beyond usual functional limits. It mainly considers for critical software but it can also be used for all types of software applications.  It is also known as Endurance Testing, fatigue testing or Torture Testing.  The stress testing includes the testing beyond standard operational size, repeatedly to a breaking point, to get the outputs.  It highlights the error handling and robustness under a heavy load instead of correct behavior under regular conditions.
  • 102. Penetration testing  Penetration testing serves as a pro-active measure to try identify vulnerabilities in services and organizations before other attackers can.  Penetration testing serves as a pro-active measure to try identify vulnerabilities in services and organizations before other attackers can
  • 103. Cross platform testing  When we have to test our application on multiple browsers, we need cross-browser testing tools. These tools will help us to ensure that our web application is working fine across the various browsers.  This tool will take place when both server-side and client-side are accessing the web application in multiple web browsers.