Change-Related Testing - ✔️✔️Testing triggered after changes are made to an existing
system or after some external event.
- Software releases
- Emergency corrections
- Migrations to new environments
- Upgrades to operating systema
- System being retired & converted
- New laws, regulations, etc.
Component (Unit) Testing - ✔️✔️Testing the smallest software item that can be
executed in isolation. These items are called components, units, modules, or classes.
Statement and branch testing often used.
Acceptance Testing - ✔️✔️Testing to confirm that the system meets user expectations,
conforms to requirements specifications, and performs the required business processes
to determine whether or not to accept the system for deployment
Defects Cluster Principle - ✔️✔️A large number of defects often occur in a few
modules of a system
Non-functional Testing - ✔️✔️Checks the software characteristics of the system,
including performance, reliability, efficiency, usability, maintainability, and portability
Functional Testing - ✔️✔️Checks the user & business requirements - what the system
does
Error or Mistake - ✔️✔️A human action that produces an incorrect result
Defect, Fault, or Bug - ✔️✔️A flaw that may cause a feature, component, or system to
not perform its required function or to perform it incorrectly
Failure - ✔️✔️The deviation of a feature, component, or system from it's expected
result
Sequential Development Lifecycle - ✔️✔️Waterfall, V-Model (Everything proceeds in
phases)
, Incremental Development Lifecycle - ✔️✔️Rapid Application Development, Rational
Unified Process, Spiral
Iterative-Incremental Development Lifecycle - ✔️✔️Agile, Scrum, SDDM, prototyping,
Extreme Programming
The V Model - ✔️✔️DEV TEST
Requirements < Acceptance
Analysis < System
Detailed Design < Integration
Program Specification < Component (Unit)
Coding
Verification - ✔️✔️Requirements have been fulfilled
Checks against previous development activity that was completed
Validation - ✔️✔️Requirements for a specific intended use or application have been
fulfilled.
Testing & QA practices to evaluate whether a product or system accomplishes its stated
purpose
Integration Testing - ✔️✔️Testing the interfaces and interactions among components,
sub-systems, and systems to expose defects
System Testing - ✔️✔️Testing an integrated system to demonstrate whether or not it
meets its requirements specifications and any undocumented requirements
Top-down Integration Testing - ✔️✔️The component at the top of the hierarchy is
tested, with stubs for lower level components
Bottom-up Integration Testing - ✔️✔️The components at the bottom of the hierarchy
are tested first, with stubs for higher level components
Big-Bang Integration Testing - ✔️✔️All components are first developed (in isolation)
and then all components are tested together.
Structural Testing - ✔️✔️Checks the architecture and design of the system
Re-testing - ✔️✔️Executing previously failed test cases to verify that the defects have
been corrected