JDBDT (Java Database Delta Testing) is a library for database test automation.
Visit http://jdbdt.github.io for reference.
JDBDT is open-source software under the terms of the MIT License.
Versions prior to 0.12 were released under the terms of the Eclipse Public License v 1.0.
JDBDT releases are available from Maven Central and GitHub.
JDBDT is self-contained (it uses the Java 8 SE API only).
Requirements:
- Maven 3.0 or higher
- Java 8 compiler or higher
Commands:
git clone git@github.com:JDBDT/jdbdt.git
cd jdbdt
mvn install
Features:
Bug fixes:
Maintenance:
- Standard maintenance tasks (dependency updates, minor adjustments, etc)
Features:
- #61 - CSV data set import / export
- #60 - getAutocommit() / setAutoCommit() convenience methods
- #56 - LIMIT support for QueryBuilder
Features:
- #47 - JDBDT.database() variants using javax.sql.DataSource
- #52 - Var-args method variants in JDBDT facade
Maintenance:
- Standard maintenance tasks (dependency updates, minor adjustments, etc)
Features:
- #5 - Database exception logging
- #33 - SQL statement execution through JDBDT.execute
- #42 - Partial support for case-sensitive column names
- #43 - DataSet.toString() utility method
Maintenance:
- Standard maintenance tasks (dependency updates, minor adjustments, etc)
API:
- #21 - Data sets can now be used for table updates/deletes.
- #25 - DataSource.getColumns() now available.
Continuous integration:
- #18 - Now using AppVeyor for Windows builds
- #19 - Travis CI: also MacOS builds
- #20 - Travis CI: also Java 9 builds
- #22 - Travis CI: using mysql service if available
- #23 - Travis CI: using postgresql service if available
- #24 - Travis CI: SonarQube add-on only for standard Linux build
- #28 - Fixed broken Java 9 build (1.0.1)
- #29 - Coverity scan during Travis build (1.0.1)
Site:
Maintenance:
- #30 - Stopped using thread-local data (1.0.1)
- #36 - Transferred ownership to JDBDT organisation (1.0.5)
- Standard maintenance tasks (dependency updates, minor adjustments, etc)
Slight API adjustments:
- #9 - API cleanup
- #15 - Let assertTableExists/DoesNotExist take the table name as argument
- #16 - Variant of drop operation supplying database handle and table name
Maintenance:
- #13 - Missing reference documentation in site for table dropping / table existence assertions
- #14 - Start using MIT license from 0.12 onwards
Features:
- #4 - Support for table dropping / table existence assertions
- #10 - Support for compressed log files (GZIP)
Maintenance:
- #6 - SonarQube integration during Travis build
- #7 - Adapt PostgreSQL test code (postgresql-embedded 2.x version features)
- #8 - Let Travis cache Maven repository
- #11 - Optionally run PIT mutation tests
- #3: ColumnFillerException should also extend JDBDTRuntimeException
- Misc. maintenance / refactoring / handling of SonarQube issues
- #2 - DataSource.setSnapshot() clears the contents of previous snapshot set
- Exception hiearchy revised:
JDBDTRuntimeException
now base class for runtime exceptions, newUnsupportedOperationException
andInternalErrorException
classes. - Misc. documentation/site adjustments.
- Builder pattern now more properly used for tables (
TableBuilder
). - Improved handling of database errors.
- Database insertions now done in batch mode.
- Validation of savepoint support.
- Miscellaneous maintenance (code style, Javadoc, site).
populateIfChanged
,changed
: new facade methods.- Improved handling of reusable/non-reusable statements.
- Documentation adjustments.
DataSetBuilder
: inhibit re-seeding of PRNG, and compute PRNG seed from data source columns.- Small adjustements to web site.
- Other small adjustments.
- Logging improvements.
- Bug fixes & improvements when handling array data (e.g. BINARY) from/to database.
- A few documentation improvements.
DataSet
:head
andtail
methods respectively renamed tofirst
andlast
.ColumnFillerException
introduced to signal errors during column filler execution.- Documentation improvements (site pages and Javadoc).
Initial release.