Arquillian Container SE

A Managed container starting a new JVM instance for each test archive. The classpath of the separate process is configurable and tests are executed using Arquillian JMX protocol.

License

License

Categories

Categories

JBoss Container Application Servers Arquillian Application Testing & Monitoring
GroupId

GroupId

org.jboss.arquillian.container
ArtifactId

ArtifactId

arquillian-container-se
Last Version

Last Version

1.0.2.Final
Release Date

Release Date

Type

Type

pom
Description

Description

Arquillian Container SE
A Managed container starting a new JVM instance for each test archive. The classpath of the separate process is configurable and tests are executed using Arquillian JMX protocol.
Project URL

Project URL

http://arquillian.org/
Source Code Management

Source Code Management

https://github.com/arquillian/arquillian-container-se

Download arquillian-container-se

How to add to project

<!-- https://jarcasting.com/artifacts/org.jboss.arquillian.container/arquillian-container-se/ -->
<dependency>
    <groupId>org.jboss.arquillian.container</groupId>
    <artifactId>arquillian-container-se</artifactId>
    <version>1.0.2.Final</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/org.jboss.arquillian.container/arquillian-container-se/
implementation 'org.jboss.arquillian.container:arquillian-container-se:1.0.2.Final'
// https://jarcasting.com/artifacts/org.jboss.arquillian.container/arquillian-container-se/
implementation ("org.jboss.arquillian.container:arquillian-container-se:1.0.2.Final")
'org.jboss.arquillian.container:arquillian-container-se:pom:1.0.2.Final'
<dependency org="org.jboss.arquillian.container" name="arquillian-container-se" rev="1.0.2.Final">
  <artifact name="arquillian-container-se" type="pom" />
</dependency>
@Grapes(
@Grab(group='org.jboss.arquillian.container', module='arquillian-container-se', version='1.0.2.Final')
)
libraryDependencies += "org.jboss.arquillian.container" % "arquillian-container-se" % "1.0.2.Final"
[org.jboss.arquillian.container/arquillian-container-se "1.0.2.Final"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

  • container-se-api
  • container-se-managed
  • container-se-server
  • container-se-tests

Arquillian-container-SE

Managed container starting a new JVM instance for each test archive. The classpath of the separate process is configurable and tests are executed using Arquillian JMX protocol.

How does it work

Arquillian-container-SE is basically implementation of standard org.jboss.arquillian.container.spi.client.container.DeployableContainer which during its deploy method starts a new JVM process with hardcoded org.jboss.arquillian.container.se.server.Main class. Newly created process exposes remote JMX connection so that Arquillian could execute a test remotely. Main class of the child process doesn’t do much. It creates new org.jboss.arquillian.protocol.jmx.JMXTestRunner MBean and registers it to MBean server. Tests are executed by this JMXTestRunner.

You can use following configuration properties:

Name Description Default value

additionalJavaOpts

allows you to specify additional Java options e.g -Dtest.foo=false

logLevel

define log level

INFO

debug

turn on debugging on port 8787

false

lib

set a directory path from which all jars are automatically added to the classpath

keepDeploymentArchives

keep your classpath artifacts after test execution

false

waitTime

time in seconds to wait for a start of the new process and JMXTestRunner MBean registration

5

Basic deployment example

You can easily compose your classpath by using org.jboss.arquillian.container.se.api.ClassPath which provides you access to static Builder class. Using this builder you can add archives, classes and similar stuff you are used to from ShrinkWrap API to your test classpath. Additionally you can specify system properties via this builder. Basic test deployment method could look like following:

[ source, java]

    @Deployment
    public static Archive<?> createTestArchive() {
        return ClassPath.builder()
                .add(ShrinkWrap.create(BeanArchive.class)
                        .addClasses(RequestScopedActiveInterceptorTest.class, Foo.class, Bar.class, Baz.class)).build();
    }
org.jboss.arquillian.container

An Innovative Testing Platform for the JVM

Versions

Version
1.0.2.Final
1.0.1.Final
1.0.0.Final
1.0.0.CR2
1.0.0.CR1
1.0.0.Alpha5
1.0.0.Alpha4
1.0.0.Alpha3
1.0.0.Alpha2
1.0.0.Alpha1