The Arquillian Universe BOM is a 'Bill of Material' Maven POM file collection that make up a module stack that stretch across the whole Arquillian Universe.
This project aim to fulfill two main requirements:
-
Simplify the 'Getting Started' experience
-
Unify naming and versions
Include the following snippet in your POM xml file:
<properties>
<version.arquillian_universe>1.1.13.5</version.arquillian_universe>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.arquillian</groupId>
<artifactId>arquillian-universe</artifactId>
<version>${version.arquillian_universe}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
Then include the individual modules as you see fit, by simply depending on the unified pom name:
<dependencies>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-junit</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
The JUnit Container integration.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-junit</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
The JUnit Standalone integration.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-junit-standalone</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
The TestNG Container integration.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-testng</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
The TestNG Standalone integration.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-testng-standalone</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Cukes in Space! allows you to deploy and run Cucumber features in the application server of your choice using the Arquillian test framework.
Documentation: https://github.com/cukespace/cukespace
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cuckes</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
The Arquillian Drone provides a simple way how to write functional tests for an application with a web-based user interface. Arquillian Drone brings the power of WebDriver into the Arquillian framework. WebDriver provides a language how to communicate with a browser, like filling the forms, navigating on the pages and validating their content.
Documentation: https://github.com/arquillian/arquillian-extension-drone
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-drone</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Graphene project is designed as set of extensions for Selenium WebDriver project focused on rapid development and usability in Java environment.
Documentation: https://github.com/arquillian/arquillian-graphene
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-graphene</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-drone dependency since it is automatically added when using arquillian-graphene .
|
Browser screenshooter is an extension to Arquillian platform which provides the possibility to take screenshots of your tests. Only browser window is screened.
Documentation: https://github.com/arquillian/arquillian-graphene/tree/master/extension/screenshooter
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-graphene-recorder</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-graphene or arquillian-recorder dependency since it is automatically added when using arquillian-graphene-recorder .
|
Warp fills the void between client-side and server-side testing.
This extension allow you to write client-side test which asserts server-side logic.
Documentation: https://github.com/arquillian/arquillian-extension-warp
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-warp</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Warp JSF adds additional Warp capabilities to JSF requests.
Documentation: https://github.com/arquillian/arquillian-extension-warp
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-warp-jsf</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-warp dependency since it is automatically added when using arquillian-warp-jsf .
|
Arquillian Transaction Extension allow you to influence the Transactional behavior of the Test via annotations.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-transaction-jta</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Persistence Extension was created to help you writing tests where persistence layer is involved. Inspired by great framework called Unitils, it brings bunch of annotations to help you deal with the underlying data storage.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-persistence</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-transaction-jta dependency since it is automatically added when using arquillian-persistence .
|
Documentation: https://github.com/arquillian/arquillian-extension-spring
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-spring</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Documentation: https://github.com/arquillian/arquillian-extension-spring
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-spring-transaction</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-spring or arquillian-transaction dependency since it is automatically added when using arquillian-spring-transaction .
|
Documentation: https://github.com/arquillian/arquillian-extension-spring
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-spring-persistence</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-spring or arquillian-persistence dependency since it is automatically added when using arquillian-spring-persistence .
|
Documentation: https://github.com/arquillian/arquillian-extension-spring
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-spring-warp</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-spring or arquillian-warp dependency since it is automatically added when using arquillian-spring-warp .
|
Byteman integration for the Arquillian Project
Mocking 2.0, Runtime bytecode manipulation in Integration tests.
Documentation: https://github.com/arquillian/arquillian-extension-byteman
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-byteman</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Automagic remote in-container code coverage
Documentation: https://github.com/arquillian/arquillian-extension-jacoco
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-jacoco</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Recorder project brings neat reports of your Arquillian tests.
Documentation: https://github.com/arquillian/arquillian-recorder/wiki/Reporter
Documentation: https://github.com/arquillian/arquillian-recorder/wiki/Screenshooter
Documentation: https://github.com/arquillian/arquillian-recorder/wiki
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-recorder</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Recorder API is a module with only the API and SPI dependencies for Recorder. This allow you to depend on the API in test/compile scope and optionally activate the complete Arquillian Reporter module in a different profile when you want the reports generated.
See Arquillian Recorder above.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-recorder-api</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian REST Client Extension allows you to test your RESTful applications on the client side.
Sometimes you need to test your REST app as a black box. You know the interface (the contract), you have some input and know what results you expect. For that purpose Arquillian REST Client Extension is your friend.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-resteasy2</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian REST Client Extension allows you to test your RESTful applications on the client side.
Sometimes you need to test your REST app as a black box. You know the interface (the contract), you have some input and know what results you expect. For that purpose Arquillian REST Client Extension is your friend.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-resteasy3</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian REST Client Extension allows you to test your RESTful applications on the client side.
Sometimes you need to test your REST app as a black box. You know the interface (the contract), you have some input and know what results you expect. For that purpose Arquillian REST Client Extension is your friend.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-jaxrs2</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian REST Client Extension allows you to test your RESTful applications on the client side.
Sometimes you need to test your REST app as a black box. You know the interface (the contract), you have some input and know what results you expect. For that purpose Arquillian REST Client Extension is your friend.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-jersey</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Warp REST Extension allows you to test your RESTful applications on the server side.
This extension brings tools for intercepting the state of the executing service and exercise it through in container tests that can be executed directly before or after the service is being invoked.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-warp-resteasy</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-warp dependency since it is automatically added when using arquillian-rest-warp-resteasy .
|
Arquillian Warp REST Extension allows you to test your RESTful applications on the server side.
This extension brings tools for intercepting the state of the executing service and exercise it through in container tests that can be executed directly before or after the service is being invoked.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-warp-jersey</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-warp dependency since it is automatically added when using arquillian-rest-warp-jersey .
|
Arquillian Warp REST Extension allows you to test your RESTful applications on the server side.
This extension brings tools for intercepting the state of the executing service and exercise it through in container tests that can be executed directly before or after the service is being invoked.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-warp-jaxrs2</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-warp dependency since it is automatically added when using arquillian-rest-warp-jaxrs2 .
|
Arquillian Warp REST Extension allows you to test your RESTful applications on the server side.
This extension brings tools for intercepting the state of the executing service and exercise it through in container tests that can be executed directly before or after the service is being invoked.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-rest-warp-cxf</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Note
|
you don’t need to add arquillian-warp dependency since it is automatically added when using arquillian-rest-warp-cxf .
|
Arquillian Cube is an Arquillian extension that can be used to manager Docker containers from Arquillian.
With this extension you can start a Docker container with a server installed, deploy the required deployable file within it and execute Arquillian tests.
The key point here is that if Docker is used as deployable platform in production, your tests are executed in a the same container as it will be in production, so your tests are even more real than before.
But it also lets you start a container with every required service like database, mail server, … and instead of stubbing or using fake objects your tests can use real servers.
Documentation: https://github.com/arquillian/arquillian-cube
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-docker</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube is an Arquillian extension that can be used to manager Docker containers from Arquillian and can be integrated with REST Assured
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-docker-restassured</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube is an Arquillian extension that can be used to manager Docker containers from Arquillian.
Documentation: https://github.com/arquillian/arquillian-cube
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-openshift</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube is an Arquillian extension that can be used to manager Docker containers from Arquillian.
The Containerless container integrates Docker images as normal Arquillian Containers without the need for any Java EE style server as a target.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-containerless</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube Kubernetes is an Arquillian extension that can be used to manager Kubernetes elements from Arquillian.
Documentation: http://arquillian.org/arquillian-cube/#_kubernetes
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-kubernetes</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube Q is an extension of Arquillian Cube (https://github.com/arquillian/arquillian-cube) that allows you to write chaos tests. Since Arquillian Cube Q is an extension of Cube, it relies on Docker to execute them.
It integrates with Pumba for container chaos.
Documentation: https://github.com/arquillian/arquillian-cube-q#container-chaos Repository: https://github.com/arquillian/arquillian-cube-q
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-q-pumba</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube Q is an extension of Arquillian Cube (https://github.com/arquillian/arquillian-cube) that allows you to write chaos tests. Since Arquillian Cube Q is an extension of Cube, it relies on Docker to execute them.
It integrates with SimianArmy for operative system chaos.
Documentation: https://github.com/arquillian/arquillian-cube-q#operative-system-chaos Repository: https://github.com/arquillian/arquillian-cube-q
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-q-simianarmy</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Cube Q is an extension of Arquillian Cube (https://github.com/arquillian/arquillian-cube) that allows you to write chaos tests. Since Arquillian Cube Q is an extension of Cube, it relies on Docker to execute them.
It integrates with Toxify for network chaos.
Documentation: https://github.com/arquillian/arquillian-cube-q#network-chaos Repository: https://github.com/arquillian/arquillian-cube-q
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-cube-q-toxic</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Algeron Pact is the integration of all Arquillian philosophy/extensions into Consumer Driven Contracts approach using Pact-JVM.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-pact-consumer</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Algeron Pact is the integration of all Arquillian philosophy/extensions into Consumer Driven Contracts approach using Pact-JVM.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-pact-provider</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Algeron provides an integration to publish generated contracts.
Documentation: https://github.com/arquillian/arquillian-algeron#arquillian-algeron-consumer-publisher
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-git-publisher</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Algeron provides an integration to publish generated contracts.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-git-retriever</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-maven-retriever</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-algeron-pact-broker-retriever</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Governor Extension and the implementations which use its API give you the possibility to programmatically choose what test methods of your Arquillian tests are going to be executed and what are going to be skipped by putting your custom annotations on the test methods.
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-governor-jira</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Governor Extension and the implementations which use its API give you the possibility to programmatically choose what test methods of your Arquillian tests are going to be executed and what are going to be skipped by putting your custom annotations on the test methods.
Documentation: https://github.com/arquillian/arquillian-governor#arquillian-github-governor-extension
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-governor-github</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Governor Extension and the implementations which use its API give you the possibility to programmatically choose what test methods of your Arquillian tests are going to be executed and what are going to be skipped by putting your custom annotations on the test methods.
Documentation: https://github.com/arquillian/arquillian-governor#arquillian-redmine-governor-extension
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-governor-redmine</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Governor Extension and the implementations which use its API give you the possibility to programmatically choose what test methods of your Arquillian tests are going to be executed and what are going to be skipped by putting your custom annotations on the test methods.
Documentation: https://github.com/arquillian/arquillian-governor#arquillian-governor-skipper-extension
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-governor-skipper</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian Governor Extension and the implementations which use its API give you the possibility to choose what test methods of your Arquillian tests are going to be executed and what are going to be skipped based on configuration of class and method expressions in the Arquillian configuration.
Documentation: https://github.com/arquillian/arquillian-governor#arquillian-governor-ignore-extension
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-governor-ignore</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Arquillian process and package manager. Makes executing an external process or fetching platform dependent dependencies an easier job.
Documentation: https://github.com/arquillian/arquillian-spacelift
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-spacelift</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
Have you ever faced an issue that switching between container implementations isn’t that easy?
Testing against several containers (JBoss AS / JBoss EAP / WildFly) or even switching between different modes (Managed, Remote, Embedded) may result in bloated pom.xml.
Chameleon Containers are able to quickly adopt to your needs without too much hassle.
Documentation: https://github.com/arquillian/arquillian-container-chameleon
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-chameleon</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-nosql-mongodb</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-nosql-redis</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-nosql-couchbase</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-nosql-vault</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-rest-postman</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-sql-container-dbunit</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-sql-standalone-dbunit</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-ape-sql-standalone-flyway</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>