Database Testing: Structured Query Language Fundamentals for Test Professionals

The majority of today's commercial systems use a relational database backend. A single database can serve as the foundation for multiple applications, integrating their data and providing concurrency control. This course will enable testers to directly interact with a database independently of any given application, and thus be able to explicitly test the integrity and accuracy of corporate data.

Attendees will learn the SQL constructs and features necessary to formulate and implement effective test cases as well as review the principles of good database design that help prevent data corruption and anomalies in the first place.

Upon completing this course you will be able to

Test for SQL Injection attack vulnerability
Find orphan records and dangling references in your database
Review a database schema for adherence to quality design guidelines
Use SQL to query a database to validate test case post conditions
Use SQL to find violations of business rules, or other potential errors in the database

Additional Topics include:

Normalization guidelines for a Relational DBMS
Update, insertion, and deletion anomalies
Entity Relationship Diagrams (ERD)
SQL Basics - Select, Insert, Update, Delete
Embedded SQL
Using Aggregation to determine data health
Inner joins, right and left outer joins, full joins, cross joins
Foreign Key Problems
Generating Test Data
Using Sub-queries
Transactions, Concurrency and Locking, Stored Procedures, Triggers, Coding Standards
Test case for deadlock response