SQA - Testing Types Flashcards
Functional Testing
“How” the system works?
Reliability, usability, maintainability, compatibility, response times, capacity for performance testing, etc.
Positive:aimed at showing that software handles properly situations in which user acts as expected (verification);
runs to verify that a software works, as expected when user conducts a correct actions.
Positive testing = Validation.
Ad hoc Smoke Acceptance Regression Boundary Alpha Beta
Negative:aimed at showing that software handles properly situations in which user acts not as user is supposed to act (error detection)
Testing runs to verify that a software
handles exceptions properly (invalid actions, inputs,
settings…)
Negative testing = Handling Exceptions (falsification ; break the system)
Error handling
Non Functional
“What” the system does?
Typically described in requirements, but can be undocumented;
Verify that functions of a system are working as specified.
May occur at all test levels.
Performance Load Stress Security Compatibility System Usability Recovery Installation
Ad Hoc - Functional Positive
performed without planning and documentation
Smoke - Functional Positive
A sanity (健全)check to see if the software functions on the most basic level. Identify simple failure.
Main features don’t work, severe bugs are not fixed, etc;
Example:
Does the program run?
Does it open a window?
Does clicking the main button do anything?
Acceptance-Functional Positive
to determine if the requirements of a specification are met (main flows of the application are functional)
Regression回歸測試-Functional Positive
partial retesting of a
modified program to make sure that no new
errors were introduced while making changes to
the code (developing new or fixing existing one)
should be done for each new release (build)
*What is the most frequently executed type of testing?
release/build acceptance (each & every build)
next one is regression
Boundary condition- Functional Positive
using the extremes of the input domain (min,max)
Alpha - Functional Positive
simulated or actual operational testing by potential users/customers or an independent test team at the developers’ site
Error handling -Negative
to determine the response of the system outside of what is defined
Security - Non Functional
Is System data protected?
How the system prevents hackers intrusion?
Confidentiality: data security (SSN, salary, medical data, etc.);
Authentication: is it a trusted computer? program?
Authorization: user’s identification (id/password); access control (read/write/delete), etc
Load - Non Functional Performance
(simplest) – system behavior under an
expected load.
Example: 50 users perform 100 transactions every 1 minute;
Load test will give out the response times of all the transactions and point to system “bottlenecks” (database, server, etc).
Performance - Non Functional
Testing if application meets the performance criteria;
Compare two systems to find which performs better;
Measure what parts of the system causes poor performance;
Need a stable build and environment, closest to production
Stress - Non Functional Performance
system behavior under an extreme load.
Example: the current load goes well above the expected
maximum (very high number of users, transactions, etc).
Will the system performs sufficiently “under stress”?
Compatibility - Non Functional
conducted on the application to evaluate the application’s compatibility with the computing environment
Examples:
Hardware platform: Desktop, Laptop, Mobile
Browser:is conducted to ensures that application look, behave, and respond the same way across different browsers
Operation System
Database: Orcale, DB2, Sybase
Mobile Carrier: Verizon, Tmobile, ATT
Recovery - Non Functional Performance
how well the application is able to recover fro crashes, hardware failures and other similar problems