ShrinkWrap Resolver 2.1.0 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.0 release of the ShrinkWrap Resolver component!

The ShrinkWrap Resolver 2.1.0 release brings you support for Maven 3.1.0, additional features and improvements to the configuration API.

Significant additions in ShrinkWrap Resolver 2.1.0

Support for Maven 3.1.0 and newer

This release was updated to use Eclipse Aether, which makes it compatible with Maven 3.1.0 and newer. ShrinkWrap Resolver Maven Plugin now requires you to run it with a recent Maven version, other components are compatible with previous Maven version as well. I’d like to thank Tomaž Cerar and Michał Matłoka for making this update possible.

API for defining Maven repositories

ShrinkWrap Resolver now allows you to specify Maven repositories directly in code. These repositories always have priority. For instance, if there is a repository with the same id defined anywhere in setting.xml or pom.xml, this definition will override it. Kudos for this feature goes to Marc-Antoine Gouillart!

Maven.configureResolver()
    .withRemoteRepo("my-repository-id", "url://to/my/repository", "layout")
    .resolve("G:A:V").withTransitivity().asFile();
Maven.configureResolver()
    .withRemoteRepo(
        MavenRemoteRepositories.createRemoteRepository(
            "my-repository-id", "url://to/my/repository", "layout"))
    .resolve("G:A:V").withTransitivity().asFile(); 
Configuration API updates

In the past, methods that modified resolution sources, such as withClassPathResolution(boolean) or withMavenCentralRepo(boolean) were enabled too late in the resolution chain, namely if you loaded a pom.xml file before, it was always loaded using default settings. To make setup clearer, configuration related methods were moved to Maven.configureResolver() API instead. The biggest advantage of this API is that it influences all resolution calls, including the ones needed for construction of pom.xml model.

Maven.configureResolver()
    .workOffline()
    .withCentralRepo(false)
    .withClasspathResolution(true)
    .loadPomFromFile("/path/to/pom.xml")
    .resolve("G:A").withTransitivity().asFile(); 

While previous methods are still working, they are marked as deprecated. Please update your tests.

We hope that you’ll enjoy our new stuff and look forward to hear your feedback in the community forums.

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.0 view tag
Release date 2014-03-16
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 12

Updating Aether to suport Maven 3.1.0 and newer

Component Upgrade
Enhancement
  • SHRINKRES-5 - Make it easier to add a maven repository with the maven resolvers
  • SHRINKRES-26 - Make Shrinkwrap resolver work in a modular environment
  • SHRINKRES-169 - Replace deprecated Assert code
Feature Request
  • SHRINKRES-164 - Support encoding property from Maven compiler plugin
Bug
Task

Thanks to the following list of contributors: Karel Piwko, Andrew Lee Rubinger, Michal Matloka, Marc Antoine Gouillart, Tomaz Cerar

Arquillian Drone Extension 1.3.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.3.0.Final release of the Arquillian Drone Extension component!

Removal of mobile related capabilities

In Arquillian Drone 1.3.0.Final we’ve upgraded to use Selenium 2.40.0. While the new version of Selenium brings you support for the latest browsers, it also dropped support for the android and iphone drivers. This change also effect Graphene, so make sure that you use Graphene 2.0.2.Final together with Drone 1.3.0.Final.

The android gap left by Selenium will be closed in a future release of Arquillian Drodium, where we will add test support for all native, hybrid and mobile web applications. Closing the iphone gap will unfortunately take us a little bit longer.

If you need to test on mobile devices, please keep using Arquillian Drone 1.2.4.Final. If you want the latest and greatest stuff for desktop browsers, go for Drone 1.3.0.Final.

We hope that you’ll enjoy our new stuff and look forward to hear your feedback in the community forums.

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 Drone Extension
Version 1.3.0.Final view tag
Release date 2014-03-13
Released by Karel Piwko
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium-depchain pom
  • org.jboss.arquillian.extension » arquillian-drone-webdriver-depchain pom
  • org.jboss.arquillian.extension » arquillian-drone-api jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-spi jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-configuration jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-impl jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium-server jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-webdriver jar javadoc pom

Release notes and resolved issues 3

Maintenace release without iOS and Android Drivers

Component Upgrade
Bug
  • ARQ-1576 - RuntimeException after testng suite switched

Thanks to the following list of contributors: Karel Piwko

Arquillian Recorder 1.0.0.Alpha2 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.Alpha2 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.Alpha2 view tag
Release date 2014-03-20
Released by Karel Piwko
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 1

Other

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

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

This is a yet another bug fixing release. Since Warp is a young extension, there are many pain points and gaps. But these are successfully being filled with the help of our awesome community.

So what’s in Alpha7 for you?

Request and response objects mixed up

Thanks to Aslak, we have identified and fixed one of the most annoying bugs in Warp’s history:

Objects in RequestContext (such as HttpServletRequest, HttpServletResponse and FilterChain) were previously identified by requests #hashCode(). But it turns up that requests’ hash code is actually far from being unique across multiple requests. Now we have Warp requests identified by UUID as a request’s attribute.

The issue was especially perceptible with Warp on the WildFly / Undertow container.

Filter chain fixed

We have identified integration issues between WarpFilter and frameworks that use custom filters such as OCPSoft Rewrite.

Warp is now the first filter in the chain of filters – it is configured to be prepended to other filters (still it may theoretically compete with other filters configured the same way).

It is also serving just REQUEST and ASYNC dispatchers (no FORWARD as it would mean warping one request multiple times).

Improved interoperability

Besides full compatibility with WildFly / EAP / JBoss AS, Warp now works just fine with TomEE 1.6 and Glassfish 4.0.

What’s next?

I think we have stabilized a fair amount of integration issues and we are close to fully passing the interoperability tests.

But still there are some features that are missing, such as:

  • verification of asynchronous requests
  • support for Java EE 5 servers
    • at this point I’m reluctant to add the support (it’s just matter of manual configuration of WarpFilter in web.xml anyway)
  • guide / documentation

Let us know in the discussion bellow what are the “must have” features and what are you struggling with that we should include before Beta release.

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 Warp
Version 1.0.0.Alpha7 view tag
Release date 2014-03-11
Released by Lukas Fryc
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-warp-bom pom
  • org.jboss.arquillian.extension » arquillian-warp-api jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-warp-spi jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-warp-impl jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-warp-jsf jar javadoc pom

Release notes and resolved issues 7

Bug Fixes - RequestContext + filters interoperatiblity

Component Upgrade
  • ARQ-1660 - Warp: Upgrade to TomEE 1.6
  • ARQ-1661 - Warp: Upgrade GlassFish to 4.0
  • ARQ-1662 - Warp: Upgrade to WildFly 8.0.0.Final
Enhancement
  • ARQ-1682 - Expose SPI events for ProcessHttpRequest, ProcessWarpRequest and ExecuteWarp
Bug
  • ARQ-1615 - Warp JSF: detect and sanitize FacesContextWrapper chain
  • ARQ-1656 - Propogate Contextual operations on HttpFilters
  • ARQ-1683 - Warp: mixes up objects in RequestContext due to wrong use of HttpServletRequest#hashCode()

Thanks to the following list of contributors: Lukas Fryc, Aslak Knutsen

Arquillian Drone Extension 1.2.4.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.2.4.Final release of the Arquillian Drone Extension component!

This is a community driven bugfix release. If you have updated to Arquillian Core 1.1.3.Final, make sure to update Drone to this version.

I’d like to thank everybody involved in this release, especially thanks to Juraj Húska and Tilmann Kuhn. You guys make testing a breeze!

Drone 2.0.0.Alpha1 coming soon

Selenium 2.40.0 dropped support for AndroidDriver and iPhoneDriver. We believe that this change should not affect Drone users that much,
therefore we aim to make Arquillian Droidium (based on Selendroid), ios-driver and Appium a drop-in replacement for Android and iOS browser testing. While we try to maintain backwards compatibility of Drone, the underlying changes to make this happen will form a baseline for the Drone 2.0.0 release. Roadmap coming soon. We’ll need your help to make the transition smooth and preserve backwards compatibility, so stay tuned!

What happens with Drone 1.x ?

We’ll drop non-supported browsers (Android, iOS) in Drone 1.3.0.Final. Because we’ll keep releasing Selenium BOM, you will be able to update Selenium to get latest browsers supported. Apart from Selenium updates, the Drone 1.x branch will only get security and critical bug fixes.

We hope that you’ll enjoy our new stuff and look forward to hear your feedback in the community forums.

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 Drone Extension
Version 1.2.4.Final view tag
Release date 2014-03-03
Released by Karel Piwko
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium-depchain pom
  • org.jboss.arquillian.extension » arquillian-drone-webdriver-depchain pom
  • org.jboss.arquillian.extension » arquillian-drone-api jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-spi jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-configuration jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-impl jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium-server jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-selenium jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-webdriver jar javadoc pom

Release notes and resolved issues 4

Bug
  • ARQ-1634 - Automatic augmentation of RemoteWebDriver is not done - canEnhance returns always false
  • ARQ-1638 - ChromeDriver binary capability is not propagated
  • ARQ-1653 - Drone use concurrent.ExecutorService without Context inheritance on Threads
  • ARQ-1655 - NPE in WebDriverFactory.createInstance()

Thanks to the following list of contributors: Karel Piwko, Aslak Knutsen, Juraj Huska