software, web, and e-business testing
services
Back to
Course
Description
Course
Agenda for Database Application Testing Fundamentals
| 1. Course Overview |
- Course objective
- Introductions
- Identifying database
applications
- The difference between
the DBMS, the database and the data
- What’s wrong with a
black-box approach to testing databases?
- Separating back-end
from front-end testing
- Tracing data through
an application
- Testing the database
design vs. testing the data
|
| 2. Understanding Database Structures |
- What is a relational
database?
- Common problems in a
relational database
- Understanding data and
data types
- Understanding
attributes
- Tables
- Records
- Primary/Secondary/Foreign
keys
- Relationships between
tables (one-one, one-many, many-many)
- Reading database
schema diagrams
|
| 3. Data Integrity |
- Types of data integrity
- Looking for data
integrity bugs at the field, table, and relationship levels
- Integrity of the data
itself as defined by business rules
- At what point does the
data become permanent in the database?
- What can happen to the
data while it’s waiting to be served?
- ACID test for
transactions
|
| 4. Analyzing Database Design |
- Analytical databases
(Data warehouse) vs Operational databases
- Inspecting table
structures to reveal design problems
- Understanding
Normalization and De-normalization (1st, 2nd and 3rd
normal form)
- Identifying bugs
caused by improperly normalized databases
- Stored Procedures
- Timing and locking
issues
|
| 5. Test Strategies |
- Organizing the
approach to testing
- Data Mining for bugs
and test cases
- Where is validation
done?
- Testing a database
migration/conversion
|
| 6. Introduction to SQL |
- Know what you are
looking for
- SQL components
- Simple SQL – Create,
Retrieve, Update and Delete (CRUD)
a. Finding the data
needed – Retrieving
b. Data Manipulation
(create, delete, update)
|