Arquillian Drone Extension 2.3.1 Released

The Arquillian team is proud to announce the 2.3.1 release of the Arquillian Drone Extension component!

This release is just a fix of one bug – Drone that was trying to set window size regardless of what was specified in arquillian.xml.

For more information about Drone 2.3.x see the Drone 2.3.0 announcement.

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 2.3.1 view tag
Release date 2017-07-14
Released by Matous Jobanek
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom 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-webdriver jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-saucelabs-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-browserstack-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-appium-extension jar javadoc pom

Release notes and resolved issues 1

Bug
  • ARQ-2128 - Window size is tried to be set to 0x0 when no dimensions are specified

Thanks to the following list of contributors: Matous Jobanek

Arquillian Drone Extension 2.3.0 Released

The Arquillian team is proud to announce the 2.3.0 release of the Arquillian Drone Extension component!

Apart from several fixes and improvements, this release brings one new feature – after quite long time, Drone provides an extension for Appium.
I’d like to thank Václav Muzikář. He’s our hero for this feature, as he implemented the whole extension!

Arquillian Drone Appium extension

This extension enables you to use the Appium project with Drone and Graphene in your functional tests for mobile devices.

This extension only provides the integration of Appium WebDrivers with Drone, i.e. it only instantiates an Appium Driver and passes DesiredCapabilities to it.
For more instructions on how to install and configure Appium server and mobile physical and/or virtual devices please refer to:
appium/appium
appium/java-client
appium.io

How to use it

1) First of all, you need to have this extension on your project’s classpath. Eg. as a Maven dependency:

<dependency>
    <groupId>org.jboss.arquillian.extension</groupId>
    <artifactId>arquillian-drone-appium-extension</artifactId>
    <version>${version.org.jboss.arquillian.drone}</version>
</dependency>

Please keep in mind that this dependency doesn’t serve as a dependency chain – you also need to add the dependencies mentioned in Drone getting started documentation

2) To use an Appium Driver you need to specify appium as a browser property:

<extension qualifier="webdriver">
    <property name="browser">appium</property>
    ...
</extension>

3) You then need to specify the Desired Capabilities for the Appium server. Some of them are required given the specific platform. E.g.:

<extension qualifier="webdriver">
    <property name="browser">appium</property>
    <property name="platformName">android</property>
    <property name="deviceName">Some Android emulator</property>
    <property name="browserName">chrome</property>
    <property name="avd">nexus</property>
</extension>

For more info please see the complete list of supported capabilities

Using remote Appium server

By default, Appium Driver starts the local Appium server by itself (or if running already), it connects to it.
To override this, you can also specify a remote address where is Appium server listening:

<extension qualifier="webdriver">
    ...
    <property name="remoteAddress">http://192.168.1.12:4723/wd/hub</property>
    ...
</extension>

ChromeOptions

In case of Android and Google Chrome browser, you can also specify ChromeOptions the same way as with the standard ChromeDriver (using the ‘chrome’ prefix). E.g.

<extension qualifier="webdriver">
        ...
        <property name="chromeArguments">--disable-translate</property>
        ...
    </extension>

Instantiation timeout

Since a mobile virtual device boot is typically performed when instantiating the driver, the instantiationTimeoutInSeconds is set to 240 seconds (instead of the default 60) by this extension.
To override this you can simply use e.g.

<extension qualifier="drone">
    <property name="instantiationTimeoutInSeconds">120</property>
</extension>

Appium Driver implementations

Different driver implementations are instantiated by this extension based on the desired platform:

You can then type cast the driver object to a specific one, e.g.:

AndroidDriver androidDriver = (AndroidDriver) driver;
androidDriver.openNotifications();

Using different Appium Java Client version

Since the Appium development is much more rapid than this extension, you can of course use a newer java-client version (and therefore newer Appium Driver) in your project.
You can e.g. just exclude the java-client dependency from this extension and use your desired version:

<dependency>
    <groupId>io.appium</groupId>
    <artifactId>java-client</artifactId>
    <version>5.0.0-BETA9</version>
</dependency>
<dependency>
    <groupId>org.jboss.arquillian.extension</groupId>
    <artifactId>arquillian-drone-appium-extension</artifactId>
    <version>${version.org.jboss.arquillian.drone}</version>
    <exclusions>
        <exclusion>
            <groupId>io.appium</groupId>
            <artifactId>java-client</artifactId>
        </exclusion>
    </exclusions>
</dependency>

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 2.3.0 view tag
Release date 2017-07-13
Released by Matous Jobanek
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom 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-webdriver jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-saucelabs-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-browserstack-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-appium-extension jar javadoc pom

Release notes and resolved issues 3

Feature Request
  • ARQ-2038 - Create Drone extension for Appium
Bug
  • ARQ-2126 - Drone sets the size twice when a DroneInstanceEnhancer is used
  • ARQ-2127 - It is not possible to set window size for chromeHeadless

Thanks to the following list of contributors: Matous Jobanek, Václav Muzikář, Hemanik

Arquillian Drone Extension 2.2.0 Released

The Arquillian team is proud to announce the 2.2.0 release of the Arquillian Drone Extension component!

Apart from several fixes this release brings two improvements:

Property for skipping creation of @Drone instances

We introduced a system property arquillian.drone.skip.creation. If you set the property to true then Drone skips the creation/injection of @Drone instances. This property is checked in a @Before phase, so you can modify the property during the test execution.

ChromeHeadless browser property

Since Chrome 59 it is possible to use headless mode. To do it in Drone, it was necessary to set chromeArguments to --headless:

<property name="browser">chrome</property>
<property name="chromeArguments">--headless</property>

This release simplifies the process by introducing a new browser property value: chromeHeadless. If you use the value as a browser property:

<property name="browser">chromeHeadless</property>

the arguments are automatically set, so the browser will be launched in the headless mode.

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 2.2.0 view tag
Release date 2017-06-13
Released by Matous Jobanek
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom 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-webdriver jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-saucelabs-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-browserstack-extension jar javadoc pom

Release notes and resolved issues 2

Enhancement
  • ARQ-2122 - Add chromeHeadless browser option to use headless chromium easily
Feature Request
  • ARQ-2119 - Allow skipping creation of Drone instances

Thanks to the following list of contributors: Matous Jobanek, Hemanik

Arquillian Drone Extension 2.1.2 Released

The Arquillian team is proud to announce the 2.1.2 release of the Arquillian Drone Extension component!

This release contains a very important fix for the automatic download feature – for cases when the geckodriver (firefox) is used.
GitHub provides a limited set of unauthorized requests (which is the way we get information about releases), and there were some corner-cases when it was quite easy to reach the limit.
This release provides improvements/fixes that should avoid such an exceedance also in these cases.

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 2.1.2 view tag
Release date 2017-05-25
Released by Matous Jobanek
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom 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-webdriver jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-saucelabs-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-browserstack-extension jar javadoc pom

Release notes and resolved issues 1

Bug
  • ARQ-2114 - It is easy to reach the GH rate limit when firefox is used

Thanks to the following list of contributors: Matous Jobanek

Arquillian Drone Extension 2.1.1 Released

The Arquillian team is proud to announce the 2.1.1 release of the Arquillian Drone Extension component!

Apart from several component updates, bug fixes and improvements; this release provides also one new feature:

Fullscreen

If you want to open your browser in fullscreen mode, use any of the following strings: full, fullscreen and max as a value of the arquillian.xml property: dimensions
For more information about configuration possibilities, see the documentation

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 2.1.1 view tag
Release date 2017-05-11
Released by Matous Jobanek
Compiled against

Published artifacts org.jboss.arquillian.extension

  • org.jboss.arquillian.extension » arquillian-drone-bom 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-webdriver jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-saucelabs-extension jar javadoc pom
  • org.jboss.arquillian.extension » arquillian-drone-browserstack-extension jar javadoc pom

Release notes and resolved issues 2

Component Upgrade
Feature Request
  • ARQ-2112 - Don't check the latest release of PhantomJS as there won't be any newer

Thanks to the following list of contributors: Matous Jobanek