Automating Database Testing

Duration: 2 Days

Course Overview

Much best practice has evolved in recent years for how to test and automate the testing of business application logic written in modern programming languages. Many of these business applications rely on database backends, whether they are relational, or latterly No-SQL databases. There is also a recent surge in the use of data warehousing and business intelligence for data interpretation and mining.

Surprisingly, little common practice has emerged for testing in these areas. While tools have appeared and been around for several years to support simple database test automation, the tools are surprisingly low on capability and no clear best practices have been widely documented even though they clearly exist.

In this module, participants are taught the application of best practices to testing databases, their schemas, their queries and stored procedures, their data migration, export and import scripts. A clear focus on test automation and what should be covered by automated tests is given.

The course is very practical, with the taught segment being no more than 40%, the remaining 60% being carried out through hands-on practical DB testing activities. Participants are introduced to direct test automation within the DB, across a connection from test code at the client, and some examples of third party test automation tools.

How can I attend my course?

On-line from
your chosen location

At our dedicated
training facility

On-site at
your premises

Course Content

Introduction

• What is database testing?
• Black box testing from the DB connection
• White/Grey box testing from within the DB SQL
• Testing queries and schemas
• Testing stored procedures, functions and triggers
• Testing scripts: migration, import and export

Test-Driven Development and Databases

• Using a test-first approach to database design
• Test-driven schema definition and DB construction
• Test-driven query design
• Using TDD to design DB internal code: Stored procedures, functions and triggers
• Performance test automation for DB queries and functions
• Creating migrations using test-driven development

Client-driven black box testing

• Using JUnit to author and execute DB tests
• Managing test data sets from the client-driven test
• Benefits and disadvantages

In DB test automation

• White box testing of DB schemas and code
• Testing using extended SQL languages (T-SQL, PL/SQL etc)
• Managing the test code independently

DB test automation tools

• Proprietary tools: SQL Server and Oracle test tools
• Data generation tools: Data factory and MockupData
• NoSQL tools, e.g. NoSQLUnit and JUnit integration
• Automated DB security tools: SQLMap
• Load testing tools
• Open source tools: DBFit, dbUnit

Planning management and reporting

• Planning the tests- achieving best value from tests
• Managing DB tests in an agile iterative environment
• Automating test reporting and results aggregation

You will receive a full set of course notes
and all supporting materials for your course.

Hard Copy Delivered to your premises or Downloaded to a chosen device.

To book this course please call 
+44 (0) 1444 410296 or email Info@kplknowledge.co.uk