Technical Exasol

Open Source Software Testing: What Do We Offer?

24 Mar 2020 | Share

What will you learn from this blog:

  • What our Open Source software testing offerings are and how you can work with them
  • The previous blog in this series covers our software development offerings while the first blog details our database drivers and interfaces, cloud, data science, analytics and machine learning, business intelligence, data virtualization and access restriction, distributed computing, administration and monitoring and data migration

What’s available?

This is the final blog in our series detailing the range of Open Source offerings that are available to you with our analytics database. We turn our attention to software testing for this latest post, and will take you through all of the relevant capabilities, how they can help you and where you can get started. Here’s what you need to know.

Docker DB

This is a variant of Exasol running inside a docker container. It is very useful in integration test, especially in combination with the exasol-testcontainers. Thanks to the underlying docker framework this test environment is quickly set up on your developer machine or on a Continuous Integration (CI) server.

Please keep in mind though that docker-db is neither intended nor suitable for production use.

Exasol Testcontainers

The exasol-testscontainers are an extension to the Open Source Testcontainers framework. This extension sets up and runs a disposable Docker container and lets users access the interfaces of the Exasol instance inside that container with minimum effort. Getting a database connection, bucket access or reading the cluster configuration are all just a few lines of code in your tests.

The test container using our docker-db images.

Result Matcher for Hamcrest

Hamcrest is a test framework that provides a plethora of modules that help comparing expected test results with what you’ve actually got. Exasol’s hamcrest-result-matcher matches JDBC result sets that your tests return against your expectations.

OpenData Examples

For integration tests you often need a base set of data to conduct your tests on. Rather than spending the time thinking up test datasets for yourself, why not use freely available ones?

The open-dataset-examples repository contains SQL scripts that set up and populate test databases for you. Download, run, have a cup of tea and start with testing.

Compatibility Test Suite

If you are a maker of a database client, a connector or an ETL tool and want to find out if you handle Exasol-specifics correctly, our compatibility-test-suite can help you.

It contains read and write test cases that work with structures and data that are not of the vanilla SQL variety as well as tips on how to perform those tests.

Test Utilities for java.util.logging

Do you plan to test whether the log messages in your Java application or library work as intended? Then this java-util-logging-testing is the right source for you.

We provide a JUnit 5 extension that lets you capture log messages issued with java.util.logging.

What’s next?

We’re always working with our user community to build on the 41 public repositories that we currently have on GitHub. If you want to contribute, feel free to share your ideas, bug reports or code commits on GitHub. We’re looking forward to hearing how you can help us improve our offerings.

 

10 trends impacting data analytics

Now that we’re well and truly in the age of data, what’s coming next? 

FREE WHITE PAPER

Close