Arquillian Core 1.1.5.Final Released

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

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

1.1.4.Final had some nasty bugs in it, 1.1.5.Final should have cleared these up.

What’s fixed in 1.1.5.Final?

Fixed false positives with JUnit from 1.1.4.Final

Arquillian Core 1.1.4.Final had a nasty bug where it would ‘erase’ some special exception cases that could happen In Container, that gave the Client side the wrong result.

This has now been fixed. Expected exceptions, Assumption and Injection errors should now be reported correctly(Both when using the @Rule and the @Test.expected variants).

JUnit @Rules support

JUnit rules has historically been a bit tricky with Arquillian. They are executed outside of the Before/After lifecycle where Arquillian has been hooking in, leaving us with no control over when they are executed.

This has in the past caused them to be executed both on the Client side and In Container. With 1.1.5.Final, we’ve moved how all this is executed and included @Rules into the Before/After handling.

This means, @Rules will follow the same rules as @Before/@After, that again follow the execution of @Test. If the @Test is executed In Container, so will the @Rule. If @Test executes on Client, so will the @Rule.

Internal TestResult state correlates with actual result

An old bug in Arquillian has been that the Internal state of the TestResult inside of Arquillian has not matched the TestResult reported by the Test Framework. This comes from how Arquillian work and integrate with the different Test Framework.

The normal case is when using @Test.expected Exception setup, Arquillian internally will report it as failed since it caught an Exception. But the Test Framework might later choose that, no, this was Expected. This happens after Arquillian gave up control of the result and we never had a callback to get this result updated to the actual state.

From the Users perspective, this is just an internal detail and has been nothing to worry about. We’ve been moving forward with the Arquillian Recorder Extension that create User reports for the test run based on the internal state. Because of this, these reports has come out a bit off.

This is now fixed for both the JUnit and TestNG integrations.

For Extension developers who require the correct TestResult; @Observe the After event.

Support exporting Deployments exploded

Arquillian has always supported exporting to disk the Archive that is about to be deployed to the container, either via the arquillian.deploymentExportPath System Property or via arquillian/engine/property@name=deploymentExportPath in arquillian.xml.

It dawned on us that if you’re exporting the deployments to disk, you’re probably interested in seeing the content.

With 1.1.5.Final you can add the arquillian.deploymentExportExploded System Property or arquillian/engine/property@name=deploymentExportExploded in arquillian.xml to have the deployment automatically exploded on export.

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.1.5.Final view tag
Release date 2014-06-25
Released by Aslak Knutsen
Compiled against

Published artifacts org.jboss.arquillian.core

  • org.jboss.arquillian.core » arquillian-core-api jar javadoc pom
  • org.jboss.arquillian.core » arquillian-core-spi jar javadoc pom
  • org.jboss.arquillian.core » arquillian-core-impl-base jar javadoc pom
  • org.jboss.arquillian.config » arquillian-config-api jar javadoc pom
  • org.jboss.arquillian.config » arquillian-config-spi jar javadoc pom
  • org.jboss.arquillian.config » arquillian-config-impl-base jar javadoc pom
  • org.jboss.arquillian.test » arquillian-test-api jar javadoc pom
  • org.jboss.arquillian.test » arquillian-test-spi jar javadoc pom
  • org.jboss.arquillian.test » arquillian-test-impl-base jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-spi jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-impl-base jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-test-api jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-test-spi jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-test-impl-base jar javadoc pom
  • org.jboss.arquillian.junit » arquillian-junit-core jar javadoc pom
  • org.jboss.arquillian.junit » arquillian-junit-standalone jar javadoc pom
  • org.jboss.arquillian.junit » arquillian-junit-container jar javadoc pom
  • org.jboss.arquillian.testng » arquillian-testng-core jar javadoc pom
  • org.jboss.arquillian.testng » arquillian-testng-standalone jar javadoc pom
  • org.jboss.arquillian.testng » arquillian-testng-container jar javadoc pom
  • org.jboss.arquillian.testenricher » arquillian-testenricher-cdi jar javadoc pom
  • org.jboss.arquillian.testenricher » arquillian-testenricher-ejb jar javadoc pom
  • org.jboss.arquillian.testenricher » arquillian-testenricher-resource jar javadoc pom
  • org.jboss.arquillian.testenricher » arquillian-testenricher-initialcontext jar javadoc pom
  • org.jboss.arquillian.protocol » arquillian-protocol-servlet jar javadoc pom
  • org.jboss.arquillian.protocol » arquillian-protocol-jmx jar javadoc pom
  • org.jboss.arquillian » arquillian-bom pom

Release notes and resolved issues 15

Feature Request
  • ARQ-286 - Should support JUnit @Rules
  • ARQ-1606 - Support deploymentExportPath to export Exploded
  • ARQ-1607 - Please avoid using arquillian.launch files, it makes Eclipse generate error logs
  • ARQ-1802 - Expose the underlying HTTPConnection used by Servlet protocol to allow new protocols manipulation access.
Bug
  • ARQ-181 - When using @Test expected exception, the internal state of the TestResult is unknown - JUnit
  • ARQ-1437 - NPE in ExceptionProxy.readExternal() for root cause leads to deserializationProblem = true
  • ARQ-1742 - Exception thrown before BeforeSuite event are not reported to user.
  • ARQ-1758 - Test passes although it fails unexpectedly
  • ARQ-1772 - Arquillian Debug does not print real event class
  • ARQ-1773 - JUnittests pass when exception is thrown from @Before-annotated method
  • ARQ-1796 - Regression: JUnit ExpectedException is not handled correctly
  • ARQ-1801 - @Before not called with arquillian-junit-standalone
  • ARQ-1803 - Deployments not being un-deploying when JUnit Category is used
  • ARQ-1804 - When using @Test expected exception, the internal state of the TestResult is unknown - TestNG
  • ARQ-1816 - Arquillian core is eating up framework exceptions

Thanks to the following list of contributors: Aslak Knutsen, Karol Lassak, Ales Justin

Arquillian OSGi 1.1.0.Final Released

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

The Arquillian team is proud to announce the 1.1.0.Final release of the Arquillian OSGi component!

What is Arquillian OSGi?

ShrinkWrap is the simplest way to create archives in Java. Using the fluent and intuitive ShrinkWrap API, developers may assemble JARs, WARs, and EARs to be deployed directly by Arquillian during testing.

Release details

Component Arquillian OSGi
Modules
Version 1.1.0.Final view tag
Release date 2014-06-11
Released by Thomas Diesler
Compiled against

Published artifacts org.jboss.arquillian.protocol

  • org.jboss.arquillian.protocol » arquillian-protocol-osgi jar javadoc pom
  • org.jboss.arquillian.testenricher » arquillian-testenricher-osgi jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-osgi jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-osgi-tests jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-jbosgi-embedded jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-felix-embedded jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-equinox-embedded jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-karaf-embedded jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-karaf-managed jar javadoc pom
  • org.jboss.arquillian.container » arquillian-container-karaf-remote jar javadoc pom

Thanks to the following list of contributors: Martin Basovnik, Stefan Bunciak, Thomas Diesler

Arquillian Recorder 1.0.0.Alpha3 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.Alpha3 release of the Arquillian Recorder component!

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 Recorder
Version 1.0.0.Alpha3 view tag
Release date 2014-06-06
Released by Stefan Miklosovic
Compiled against

Published artifacts org.arquillian.extension

  • org.arquillian.extension » arquillian-recorder-api jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-spi jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-reporter-api jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-reporter-spi jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-reporter-impl jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-screenshooter-api jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-screenshooter-spi jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-screenshooter-impl-base jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-video-api jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-video-spi jar javadoc pom
  • org.arquillian.extension » arquillian-recorder-video-impl-base jar javadoc pom

Release notes and resolved issues 5

Enhancement
  • ARQ-1715 - Merge release profile to default profile
Feature Request
  • ARQ-1706 - Add multilanguage to AsciiDocExporter
  • ARQ-1726 - Reporter does not consider screenshots taken manually in test methods
Bug
  • ARQ-1722 - Name of Screenshooter method setting screenshot type is mangled
  • ARQ-1748 - Making html report with screenshooter on cp deletes target

Thanks to the following list of contributors: Stefan Miklosovic, Alex Soto, Karel Piwko

Graphene 2.0.3.Final Released

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

The Arquillian team is proud to announce the 2.0.3.Final release of the Graphene component!

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 Graphene
Version 2.0.3.Final view tag
Release date 2014-06-03
Released by Lukas Fryc
Compiled against

Published artifacts org.jboss.arquillian.graphene

  • org.jboss.arquillian.graphene » graphene-parent pom
  • org.jboss.arquillian.graphene » graphene-webdriver pom
  • org.jboss.arquillian.graphene » arquillian-graphene pom
  • org.jboss.arquillian.graphene » graphene-webdriver-spi jar javadoc pom
  • org.jboss.arquillian.graphene » graphene-webdriver-api jar javadoc pom
  • org.jboss.arquillian.graphene » graphene-webdriver-impl jar javadoc pom

Release notes and resolved issues 8

XHR2/Selenium Compatibility Fixes

Component Upgrade
Enhancement
  • ARQGRA-442 - Make SeleniumResourceProvider compatible with Selenium API 2.42.0
Bug
  • ARQGRA-432 - guardAjax does not work with XHR2 requests
  • ARQGRA-433 - Prevent FieldAccessValidatorEnricher from reporting issues with public fields in test class
  • ARQGRA-441 - xhrInterception breaks applications using jQuery 2.x
  • ARQGRA-444 - Functional tests fail to run due to surefire plugin failure
  • ARQGRA-445 - Wrong classes are injected to PageObject injection points in abstract test basis
Task
  • ARQGRA-447 - Switch functional tests to run on PhantomJS by default (HtmlUnit does not support XHR2)

Thanks to the following list of contributors: Lukas Fryc, Juraj Huska, Sona Jamborova, Oliver Kiss

ShrinkWrap Resolver 2.1.1 Released

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

The Arquillian team is proud to announce the 2.1.1 release of the ShrinkWrap Resolver component!

What is ShrinkWrap Resolver?

The ShrinkWrap Resolvers project provides a Java API to obtain artifacts from a repository system. This is handy to include third party libraries available in any Maven repository in your test archive. ShrinkWrap Resolvers additionally allow you to reuse all the configuration you've already specified in the Maven build file, making packaging of an application archive much easier job.

Release details

Component ShrinkWrap Resolver
Version 2.1.1 view tag
Release date 2014-05-28
Released by Karel Piwko
Compiled against
  • JUnit – 4.11

Published artifacts org.jboss.shrinkwrap.resolver

  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-bom pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-api jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-api-maven jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-depchain pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-impl-maven jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-api-maven-archive jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-spi-maven jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-spi-maven-archive jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-impl-maven-archive jar javadoc pom
  • org.jboss.shrinkwrap.resolver » shrinkwrap-resolver-spi jar javadoc pom

Release notes and resolved issues 6

Bugfix release without Gradle

Enhancement
  • SHRINKRES-174 - Missleading Exception message when sonatype and eclipse Aether found on classpath
Bug
  • SHRINKRES-162 - Resolved file extension returned instead of packaging type in MavenResolvedArtifact
  • SHRINKRES-175 - Aether fails to instantiate RepositorySystem if SLF4J < 1.6 is on CP
  • SHRINKRES-177 - Version range resolution fails if metadata file doesn't exist in local repository
  • SHRINKRES-182 - ShrinkWrap Resolver sometimes can't resolve a dependency with EJB packaging
  • SHRINKRES-189 - Maven resolver unable to resolve test-jar artifacts without classifier

Thanks to the following list of contributors: Alex Soto, Karel Piwko, Tadeas Kriz