Graphene 2.1.0.Alpha1 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.Alpha1 release of the Graphene component!

Screenshooter

The major addition for Graphene toolset in 2.1.0.Alpha1 is a possibility to take screenshots while running functional tests. Together with awesome the Arquillian Recorder extension, you end up with clean and informative reports full of screenshots of your tests.

Working with these reports decreases the chance that you will have to debug the test in order to fix it. From now on you can just take a peek at the screenshot, the test method name and failure message; all in one place, and you will know how to fix it!

Here is a screenshot made just after the initial page is opened:

And here is a page when the test fails:

If you want to see the full report produced by Arquillian Recorder, have a sneak peek on this actual report from the test above.

There are no changes required to test code itself:

@Test
@RunAsClient
public void testSubmitCorrectData() {
    detailsPage.fillInCorrectData();
    detailsPage.submitForm();
    waitAjax().until()
        .element(detailsPage.getSuccessfulySubmittedMessage)).is().visible();
}

Basic usage

The basic configuration is described in this README file. Please review it in order to learn how to incorporate this extension into your test suite.

Please bear in mind that this is only the Alpha1 release, and that there is plenty of space for improvement. Indeed your ideas are very welcomed!

Support for Page Objects written in Groovy

Thanks to Chris Jones addition, Graphene now supports Page Objects written in Groovy!

This nice improvement will eventually be merged back to 2.0.

Interceptor precedence

In this release we also added a int getPrecedence method to Interceptor interface. It gives you a chance to tell Graphene which order to execute the [interceptors](https://docs.jboss.org/author/display/ARQGRA2/Graphene+Interceptors).

The smaller the precedence is, the later the interceptor is invoked. This allows to make the extensions work together as needed.

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.1.0.Alpha1 view tag
Release date 2014-07-30
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
  • org.jboss.arquillian.graphene » arquillian-browser-screenshooter jar javadoc pom

Release notes and resolved issues 5

Screenshooter; Interceptors

Enhancement
  • ARQGRA-446 - Add support for Groovy page objects
Feature Request
  • ARQGRA-408 - Provide SPI for custom @Location resolution
  • ARQGRA-423 - Provide a way to intercept in some order
Bug
  • ARQGRA-450 - takeBeforeTest does not work when loading of the page is in JUnit @Before method
Task
  • ARQGRA-420 - Port unified screenshooter implementation for Graphene into Graphene project itself

Thanks to the following list of contributors: Juraj Huska, Stefan Miklosovic, Lukas Fryc,