Arquillian testing platform gets first stable release
After months of hard graft, the JBoss Community have announced their first stable release of their JVM testing platform, Arquillian, aiming to substantially reduce the effort required to write and execute Java middleware integration and functional tests, some of which were previously untestable.
Arquillian has three guiding principles: that tests should be portable to any supported container, executable from the IDE to simplify the entire process and, most importantly to the Java community, to unify the testing ecosystem with already-established frameworks.
The project originated from the JBoss Test Harness developed for the CDI 1.0 (JSR-299) specification by Pete Muir back in 2009 as a sort of spin-off. It has now evolved into an extensible testing platform. The astronomical progress is emphasised by the fact that the next iteration of CDI 1.1 has migrated to Arquillian. Not bad for a spin-off.
Arquillian is also used by numerous open source projects across the JBoss community and beyond, including Hibernate, JBoss AS 7, Drools, RHQ, JClouds and Apache DeltaSpike.
Led by Aslak Knutsen, Arquillian has a vibrant community around it, receiving contributions from over 100 members within JBoss. The anticipation for this release had reached fever pitch, with many eager to see the first stable offering from Arquillian, after they had received the Duke's Choice Award for innovation in integration testing at JavaOne 2011.
One key addition for the 1.0.0 Final release is Arquillian Drone, an web-based extension which is arguably the most mature of all extensions that makes it possible to write browser-based tests without all the dredging. With other extensions such as an Android test controller, code coverage with Jacoco and DBUnit integration, it is quite possible that this stable release will instigate new projects to add further arms for Arquillian.
Other features specific to this release include the possibility to orchestrate multiple deployments across multiple containers and domain controllers in a single test and a new configuration schema that supports multiple configurations per container.
The release signals how popular Arquillian has become, with the platform able to manage more than a dozen container vendors (including JBoss AS, GlassFish and Tomcat) and support for running tests in cloud services. The container support allows developers to target a variety of technology platforms across the spectrum, including Java EE 5 and 6, Servlet environments, OSGi, Embedded EJB and standalone CDI,
The list of people speaking highly of the revolutionary testing platform is long. Bartosz Majsak of Cambridge Technology Partners said:
Arquillian is a really great integration testing tool full of potential. It's just great that the JBoss guys are aiming to provide support for almost all widely used application servers and web containers. If you are writing an application for the Java EE 6 stack, not using Arquillian is a serious mistake!”
The Arquillian platform and extensions are available in the Maven Central and JBoss Community artifact repositories. Instructions for setting up Arquillian in your project and writing Arquillian tests are covered in the newly-minted Arquillian Guides. Arquillian is released under the Apache License, v2.0.
It's an important release for JBoss, easing testing processes for all, but the main news to take from it is that Arquillian could become the testing hub for the future.