Unit Tests for SQL

Journal Article (2024)
Author(s)

Diomidis Spinellis (TU Delft - Software Engineering)

Research Group
Software Engineering
Copyright
© 2024 D. Spinellis
DOI related publication
https://doi.org/10.1109/MS.2023.3328788
More Info
expand_more
Publication Year
2024
Language
English
Copyright
© 2024 D. Spinellis
Research Group
Software Engineering
Issue number
1
Volume number
41
Pages (from-to)
31-34
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

RDBUnit is a unit testing framework designed to test relational database queries, created out of a need for unit testing them while working on software analytics tasks. It is available as a Python package on PyPI and open-source software on GitHub. RDBUnit tests consist of three parts: setup, query, and expected result, with the input and output defined as table contents. The framework utilizes a domain-specific language (DSL) for test specifications, employs a simple parsing mechanism, and uses a class hierarchy for managing database differences. It evaluates test results through SQL code generated and handled by the database engine. RDBUnit supports SQLite, mySQL, and PostgreSQL, and is implemented as a command-line tool suitable for diverse operating systems and continuous integration environments. It has proved beneficial in identifying subtle bugs and facilitating a focused and efficient approach to experimenting with SQL queries, especially in big data scenarios, signifying the assurance provided by unit testing in SQL-centric tasks.

Files

Unit_Tests_for_SQL.pdf
(pdf | 2.67 Mb)
- Embargo expired in 30-06-2024
License info not available