Arquillian Drone/Graphene/Selenium and UI/Functionality Testing Arquillian Drone/Graphene/Selenium and UI/Functionality Testing selenium selenium

Arquillian Drone/Graphene/Selenium and UI/Functionality Testing


Arquillian Drone and Graphene are built on top of of Selenium/Webdriver. Former simplifies configuration and management of drivers, where latter provides some nice abstractions and facades to interact with the browser.

You can find quite a bit of useful information on the projects documentation pages:

All the things already mentioned by Happy Selenium User are therefore available when you combine Arquillain with Drone/Graphene.

There is also Android extension in Arquillian ecosystem which can drive your web tests (again through WebDriver) which simplifies connecting/managing your Android device or emulator.


Happy Selenium (WebDriver) user here. I have no idea what Arquillian Drone / Graphene are, but I know Selenium fairly well:

  1. Will I be able to simulate any kind of end-user input (mouse clicks, key strokes, etc.) to any DOM element (buttons, divs, images, etc.) in my Java test cases?

    Any kind of input to any DOM element:

    • mouse clicks, double clicks, right clicks
    • key strokes, simultaneous keys pressing, functional keys
    • drag'n'drop (inside the browser - you can't really drag a file from desktop to an element on a page)
    • any combination of the above, even defined as a single action

      Additionally,

    • uploading of files (no reliable downloading, although there are good user-made workarounds for most browsers / native Java downloading)
    • running JavaScript
    • screenshot taking
    • cookies managing

      However, Selenium has none to very limited support of Silverlight and Flash elements.

  2. Will I be able to simulate all this input across all major browsers (IE, FF, Chrome, and Safari) and versions?

    IE, FF, Opera, Chrome, all without a problem. The Safari support is very new (from April) and is still annotated Beta, so no certainties there. However, it mostly works, and is more complete with every additional version.

  3. Will I be able to simulate all this input across all major mobile devices (Webkit for mobile web and Android, iOS, Windows Phone, Blackberry, Kindle and Nook for native) and versions?

    • Android: yes, WebView configured as Android Browser
    • iOS: yes, UIWebView
    • others: only unofficially: headless WebKitDriver, two years dead BlackBerryDriver

      On those mobile browsers, rotating, finger swipes etc. are of course included.