Arquillian Universe 1.0.0.Alpha1 Released

Since we wrote this post we didn't laze around. Check our latest announcement.

The Arquillian team is proud to announce the 1.0.0.Alpha1 release of the Arquillian Universe component!

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:

  1. Simplify the ‘Getting Started’ experience
  2. Unify naming and versions

How do I use it?

Include the following snippet in your POM xml file:

<properties>
    <version.arquillian_universe>1.0.0.Alpha1</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>

Which modules are available in 1.0.0.Alpha1?

JUnit
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-junit</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

The JUnit Container integration.

JUnit Standalone
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-junit-standalone</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

The JUnit Standalone Container integration.

TestNG
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-testng</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

The TestNG Container integration.

TestNG Standalone
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-testng-standalone</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

The TestNG Standalone integration.

Cuckes in Space
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-cuckes</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.

Arquillian Drone
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-drone</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.

Arquillian Graphene
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-graphene</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.

Arquillian Graphene Recorder
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-graphene-recorder</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Browser screenshooter is an extension to Arquillian platform which provides the possibility to take screenshots of your tests. Only browser window is screened.

Arquillian Warp
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-warp</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

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.

Arquillian Warp JSF
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-warp-jsf</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Warp JSF adds additional Warp capabilities to JSF requests.

Arquillian Transaction JTA
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-transaction-jta</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Arquillian Transaction Extension allow you to influence the Transactional behavior of the Test via annotations.

Arquillian Persistence
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-persistence</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.

Arquillian Spring
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-spring</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>
Arquillian Spring Transaction
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-spring-transaction</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>
Arquillian Spring Persistence
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-spring-persistence</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>
Arquillian Spring Warp
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-spring-warp</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>
Arquillian Byteman
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-byteman</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Byteman integration for the Arquillian Project

Mocking 2.0, Runtime bytecode manipulation in Integration tests.

Arquillian Jacoco
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-jacoco</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Automagic remote in-container code coverage

Arquillian Recorder
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-recorder</artifactId>
    <scope>test</scope>
    <type>pom</type>
</dependency>

Arquillian Recorder project brings neat reports of your Arquillian tests.

Arquillian Recorder API
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-recorder-api</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.

Arquillian REST RestEasy 2.x
<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.

Arquillian REST RestEasy 3.x
<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.

Arquillian REST JAXRS 2.0
<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.

Arquillian REST Jersey
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-rest-jersey</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.

Arquillian REST Warp RestEasy
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-rest-warp-resteasy</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.

Arquillian REST Warp Jersey
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-rest-warp-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.

Arquillian REST Warp JAXRS 2.0
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-rest-warp-jaxrs2</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.

Arquillian REST Warp CXF
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-rest-warp-cxf</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.

Arquillian Cube Docker
<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.

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.

Arquillian Cube Containerless
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-cube-containerless</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.

Arquillian Governor JIRA
<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.

Arquillian Governor GitHub
<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.

Arquillian Governor Skipper

<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 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.

Arquillian Spacelift
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-spacelift</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.

Arquillian Chameleon Container
<dependency>
    <groupId>org.arquillian.universe</groupId>
    <artifactId>arquillian-chameleon</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.

For more information please see the documentation.

What is Arquillian Universe?

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.

Release details

Component Arquillian Universe
Version 1.0.0.Alpha1 view tag
Release date 2015-10-09
Released by Aslak Knutsen
Compiled against

Published artifacts org.arquillian.universe

  • org.arquillian.universe » arquillian-core pom
  • org.arquillian.universe » arquillian-junit pom
  • org.arquillian.universe » arquillian-junit-standalone pom
  • org.arquillian.universe » arquillian-testng pom
  • org.arquillian.universe » arquillian-testng-standalone pom
  • org.arquillian » arquillian-universe pom
  • org.arquillian.universe » arquillian-drone pom
  • org.arquillian.universe » arquillian-graphene pom
  • org.arquillian.universe » arquillian-graphene-recorder pom
  • org.arquillian.universe » arquillian-warp pom
  • org.arquillian.universe » arquillian-warp-jsf pom
  • org.arquillian.universe » arquillian-transaction-core pom
  • org.arquillian.universe » arquillian-transaction-jta pom
  • org.arquillian.universe » arquillian-persistence-core pom
  • org.arquillian.universe » arquillian-persistence pom
  • org.arquillian.universe » arquillian-spring pom
  • org.arquillian.universe » arquillian-spring-transaction pom
  • org.arquillian.universe » arquillian-spring-persistence pom
  • org.arquillian.universe » arquillian-spring-warp pom
  • org.arquillian.universe » arquillian-governor-core pom
  • org.arquillian.universe » arquillian-governor-jira pom
  • org.arquillian.universe » arquillian-governor-skipper pom
  • org.arquillian.universe » arquillian-byteman pom
  • org.arquillian.universe » arquillian-jacoco pom
  • org.arquillian.universe » arquillian-recorder-api pom
  • org.arquillian.universe » arquillian-recorder pom
  • org.arquillian.universe » arquillian-rest-core pom
  • org.arquillian.universe » arquillian-rest-resteasy2 pom
  • org.arquillian.universe » arquillian-rest-resteasy3 pom
  • org.arquillian.universe » arquillian-rest-jaxrs2 pom
  • org.arquillian.universe » arquillian-rest-jersey pom
  • org.arquillian.universe » arquillian-rest-warp-core pom
  • org.arquillian.universe » arquillian-rest-warp-resteasy pom
  • org.arquillian.universe » arquillian-rest-warp-jaxrs2 pom
  • org.arquillian.universe » arquillian-rest-warp-jersey pom
  • org.arquillian.universe » arquillian-rest-warp-cxf pom
  • org.arquillian.universe » arquillian-spacelift pom
  • org.arquillian.universe » arquillian-chameleon pom
  • org.arquillian.universe » arquillian-cube-core pom
  • org.arquillian.universe » arquillian-cube-docker pom
  • org.arquillian.universe » arquillian-cube-openshift pom
  • org.arquillian.universe » arquillian-cube-containerless pom
  • org.arquillian.universe » arquillian-cukes pom
  • org.arquillian.universe » arquillian-test jar javadoc pom

Release notes and resolved issues 18

Enhancement
Module
Bug

Thanks to the following list of contributors: Aslak Knutsen, Alex Soto, Stefan Miklosovic