activemq-artemis/tests/db-tests/README.md

61 lines
2.0 KiB
Markdown
Raw Normal View History

# Database Tests
This module runs tests against selected Databases.
There is one profile for each supported Database:
- DB-derby-tests
- DB-postgres-tests
- DB-mysql-tests
- DB-mssql-tests
- DB-db2-tests
- DB-oracle-tests
To enable the testsuite to run against any of these databases, simply enable the corresponding profiles.
## Providing Databases
When enabling a Database profile, you must download and provide the running database for that profile. You can also configure the JDBC URI.
You can refer to the examples provided under `./scripts`. Please note that you are responsible for complying with the licensing requirements of each database you provide.
## Configuring the JDBC URI
You can pass the JDBC URI as a parameter using the following supported parameters:
- `derby.uri`
- `postgres.uri`
- `mysql.uri`
- `mssql.uri`
- `oracle.uri`
- `db2.uri`
Example:
```shell
mvn -Pdb2.uri='jdbc:db2://MyDB2Server:50000/artemis:user=db2inst1;password=artemis;'
```
#Security Authorization
Tests on this module will perform several `drop table` and `create table` operations. So the user used to connecto these databases must have such `security grants`.
Also It is recommended to the database schema allocated exclusively to this testsuite.
# Servers
One Artemis server is created for each supported database. After building, they will be available under ./target/${DATABASE}:
- `./target/derby`
- `./target/postgres`
- `./target/mysql`
- `./target/mssql`
- `./target/db2`
Some of the tests on this module are connecting to the database directly, and these tests will use the JDBC jar directly from the `lib folder` from each of these servers.
# Oracle JDBC Driver
All the JDBC drivers using in this module are available as maven central repository and are being downloaded by the artemis-maven-plugin during the compilation phase of the tests.
The exception to this rule is [Oracle database](https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html), for which you must provide the JAR under this location:
- jdbc-drivers/oracle