Arquillian Core 1.0.0.Final Released

The Arquillian team is proud to announce the 1.0.0.Final release of the Arquillian Core component!

Just over two years ago, we announced the first alpha release of Arquillian. We were excited back then to present a new way of testing where tests execute inside the container. We started out offering only support for testing Java EE and a handful of containers adapters.

Today, we are announcing the 1.0.0.Final release of Arquillian, now a sophisticated integration and functional testing platform that’s been rearchitected since it’s debut and is enhanced by a plethora of container adapters, test runners, extensions and tool plugins.

Over that two year period, Arquillian and our vision for it has matured dramatically. The goal, however, has remained the same: to make integration (and functional) tests as simple to write as unit tests. Now we just want it to be way more powerful and handle a whole lot more scenarios.

The community has also grown significantly. Over 100 people have contributed to either Arquillian or ShrinkWrap. Several of those contributors are leading one or more modules. Not only do the contributions of these community members help the projects move forward, they bring ideas that take Arquillian down new pathways in pursuit of more advanced, capable and intelligent tests while at the same time driving down the effort to write them.

Thanks to all of you who have contributed to the Arquillian project!! The army of contributors are the true heros of the Arquillian invasion!

Now for some details…

Since 1.0.0.CR8, the following component upgrades have been introduced, which are defined in the Arquillian BOM:

  • ShrinkWrap 1.0.0
  • ShrinkWrap Resolver 1.0.0-beta-6
  • ShrinkWrap Descriptors 2.0.0-alpha-2

The ShrinkWrap Descriptor 2 release is quite different from the 1.x series, but it’s the way forward :)

The implementation jar, which previously had the artifactId shrinkwrap-descriptors-impl, has been split into three artifacts:

  • shrinkwrap-descriptors-impl-javaee – Java EE 5 & 6 Descriptors
  • shrinkwrap-descriptors-impl-jboss – JBoss AS Specific Descriptors
  • shrinkwrap-descriptors-impl-misc – Jetty Descriptors

When upgrading to ShrinkWrap Descriptor 2, expect all package names and fluent APIs to have changed. The API still has the same feel, so it shouldn’t be too hard to make the transition. Here’s an example of how the new API looks:

Descriptors.create(BeansDescriptor.class)
	.createDecorators().clazz(MyDecorator.class.getName()).up()
	.createAlternatives().clazz(MyAlternative.class.getName()).up()
	.exportAsString()

What is Arquillian?

Arquillian is open source software that empowers you to test JVM-based applications more effectively. Created to defend the software galaxy from bugs, Arquillian brings your test to the runtime so you can focus on testing your application's behavior rather than managing the runtime. Using Arquillian, you can develop a comprehensive suite of tests from the convenience of your IDE and run them in any IDE, build tool or continuous integration environment.

Release details

Component Arquillian Core
Version 1.0.0.Final view tag
Release date 2012-04-10
Released by Aslak Knutsen
Compiled against

Published artifacts org.jboss.arquillian.core

  • org.jboss.arquillian.core » arquillian-core-api jar pom
  • org.jboss.arquillian.core » arquillian-core-spi jar pom
  • org.jboss.arquillian.core » arquillian-core-impl-base jar pom
  • org.jboss.arquillian.config » arquillian-config-api jar pom
  • org.jboss.arquillian.config » arquillian-config-spi jar pom
  • org.jboss.arquillian.config » arquillian-config-impl-base jar pom
  • org.jboss.arquillian.container » arquillian-container-spi jar pom
  • org.jboss.arquillian.container » arquillian-container-impl-base jar pom
  • org.jboss.arquillian.junit » arquillian-junit-core jar pom
  • org.jboss.arquillian.junit » arquillian-junit-standalone jar pom
  • org.jboss.arquillian.junit » arquillian-junit-container jar pom
  • org.jboss.arquillian.protocol » arquillian-protocol-servlet jar pom
  • org.jboss.arquillian.protocol » arquillian-protocol-jmx jar pom
  • org.jboss.arquillian » arquillian-bom pom

Release notes and resolved issues 17

Bug
  • ARQ-619 - If multiple DeployableContainers are in the classpath the exception message is currently incorrect
  • ARQ-632 - org.jboss.arquillian.container.spi.client.protocol.metadata.JMXContext should close the JMXConnector when use of MBeanServerConnection is complete
  • ARQ-649 - Testsuite hangs using as7-managed-container
  • ARQ-857 - Verify Arquillian Core can run on JDK 1.5
Component Upgrade
  • ARQ-581 - Upgrade to ShrinkWrap Descriptors 1.1.0-beta-1
  • ARQ-655 - Upgrade Arquillian-Bom to consume the new ShrinkWrap-Bom's
Enhancement
  • ARQ-618 - ValidationException "DeploymentScenario contains targets not matching any defined Container in the registry." could be even more clear
  • ARQ-842 - Better error message when container configuration cannot be read
Feature Request
  • ARQ-686 - Remove parent artifact from Arquillian-BOM
  • ARQ-807 - Report unused configured container properties
  • ARQ-840 - Should allow to define a Container configuration with only default options
  • ARQ-852 - Remove examples in Core
  • ARQ-853 - Verify SPI JavaDoc
  • ARQ-858 - Should validate that a TestClass does not contain multiple same named Archives with the same Target
Task
  • ARQ-565 - Triage Arquillian JIRA before 1.0.0.Final
  • ARQ-809 - Arquillian Build Broken Using Default Config

Thanks to the following list of contributors: Aslak Knutsen, Tommy Tynjä