@lukeis lukeis released this Oct 21, 2015 · 44 commits to master since this release

  • wrapping webviews in a better way, to handle hybrid apps that override methods on the webview(s)
  • native element getAttribute now run on UI Thread, to access certain attributes on a WebView (like getScale)
  • marshmallow support #987
  • add factory to allow custom drivers #975
  • merge device config into node capability for grid auto re-register #963
  • kill orphaned processes after test has finished #961
  • update selenium maven dependency #946



@DominikDary DominikDary released this Jul 18, 2015 · 69 commits to master since this release

  • gets app version from pom.xml if class path doesn't start with jar #835
  • Clear data before app launch #844
  • Drop explicit 'implements TakesScreenshot, JavascriptExecutor' declarations #846
  • Trigger DOM event of type 'INPUT' after changing value of INPUT element #746
  • Grid auto re-register #756
  • Added activities to test touch gestures in the selendroid-test app #848
  • implemented driver.manage().timeouts().PageLoadTimeout() #849
  • Added cordova-android 4.0.0 support #859
  • Append error details to page source #850
  • Delete temporary created by Selendroid Server #862
  • Refactored SafeHandle (Action chain) for future multitouch implementation. #860
  • Changed the implicit wait timeout from 5s to 0 as per webdriver spec #895
  • Add WXGA720 skin for detection of screen resolution #904
  • Optimize screenshots from standalone server #904
  • Fix bug SelendroidServerBuilder when executing tests and using default keystore alias and passwords and androidKeyStore file exists #904
  • Don't add "offline" hardware devices on startup #900
  • [client] Fix SelendroidDriver#readCallLog() #916
  • [server] Fix finding a collection of elements by class name for non existing classes #918
  • [standalone] Fix ..session/log/types endpoint #927
  • [standalone] Fix HTTP response for unknown commands #928
  • [server] Fix NPE in ViewHierarchyAnalyzer #929
  • [server] Do not try to get the resource name if the view has no id #930
  • [server] Do not search in multiple top level views #931
  • Update AndroidAtoms #925



@DominikDary DominikDary released this Mar 3, 2015 · 195 commits to master since this release


  • Fix native view search with multiple top level views #799
  • Reverted the 'adb.terminate()' call (back into if condition). #803
  • Log click position #801
  • fix registration of selendroid server into a selenium grid #802
  • fix NPE on native apps driver.switchTo().defaultContent() #776
  • Fixing maven issues by using latest maven-android-plugin. #804
  • Introduce Predicate and AndroidElement factories #811
  • Fixing setAirplaneMode(true) for Android API 21 #816
  • Using latest selenium release. #818
  • Add assets for inspector #820
  • Added apiTargetType as an option to SelendroidCapabilities #823



@DominikDary DominikDary released this Feb 3, 2015 · 238 commits to master since this release

  • Don't log exception when waiting for the Selendroid server to start
  • fixed support for Cordova 3.6.x apps



@DominikDary DominikDary released this Jan 15, 2015 · 246 commits to master since this release

  • In case of an shutting down selendroid-standalone (using an already started emulator) this fix is fixing the NPE.
  • Read adb output. #695
  • Selendroid-standalone argument -emulatorOptions to handle multiple options for emulator #697
  • Selendroid-standalone: Fix to ScreenSize detection of emulators, and a feature - configurable maxSession and maxInstances. #703
  • Corrections to JSON to register at Grid hub. #713
  • Added folder monitoring capability and fixed emulator launching problem. #712
  • Introduced package per component. E.g. client bindings are located in io.selendroid.client #725
  • Correctly wait for Selendroid standalone server to come up
  • Consider 'emulator' capability when matching
  • For each device, register as "android" for WebView tests and also selendroid if an aut is specified
  • Elements don't need to be enabled to be visible.
  • Removed the adb command implementation, now done via automation
  • Automatically selects the latest version of the app to test if it is not specified by users.
  • terminate must be called on AndroidDebugBridge on shutdown.
  • Removed Gson dependency from server and client
  • fixes #767 stop internal ExecutorService of TrafficCounter on shutdown
  • Only return stack traces for unknown errors
  • Adding "model" as a configurable parameter option.



@DominikDary DominikDary released this Oct 21, 2014 · 322 commits to master since this release

  • Support to custom keystore, password, alias. #536
  • Added freeing on selendroidPort on driver.quit() #557
  • The activity class is not any longer immediately loaded. #558
  • Fixes bug in findElementsByName() #559
  • Optimize searching for elements in selendroid #560
  • Allowed disabling of adb logcat device logging with flag #561
  • Cleaned up repetitive error handling in selendroid-server #562
  • Stop swallowing exception when waiting for instrumentation #563
  • Allow selendroid-server start timeout to be passed on command line #564
  • Added "-h" and" --help" options to selendroid-standalone-server.
  • Split up SelendroidLauncher main().
  • Added capability to load in extension handlers and a test bootstrap class
  • Assume AUT is already installed if LaunchActivity specified & no matching appsStore entry #567
  • Propagate unhandled exceptions in AUT as AppCrashedException
  • Added server-side support for low-level actions API
  • Added client side implementation of the multi touch screen
  • Added empty()/copyOf()/withMerged() to SelendroidCapabilities
  • Added ability to run GC and set system properties.
  • GetElementAttribute returns null if attribute is not set. Fixes #568
  • Removed manual looper as we can now get the device to dump crash logs to a file
  • Added SelendroidStandaloneDriverEventListener to allow hooking into events during Selendroid startup
  • Run bootstrap and launch main activity on the UI thread in ServerInstrumentation
  • Fixed cloning of existing session capabilities in GetCapabilities()
  • Added logging of selendroid traffic statistics
  • Prevent hardware devices from showing up multiple times in the DeviceStore
  • getWindowSize() now supports API levels < 13
  • Changed getScreenSize() to use Dimension instead of string,
    added support for emulators with string skin names
  • Fixed loading of keystores with no password
  • Send connection: close header in responses. Fixes #458
  • Removed 'SelendroidKeys.ANDROID_HOME' because emulating the home key using Instrumentation is not supported in Android. Use adb to emulate the home key in your tests.
  • Return capabilities immediately after session creation instead of redirecting
  • Lowered severity of logs in isSelendroidRunning(), made messages more informative.
  • Made E2E tests use SelendroidStandaloneServer
  • findElements() returns an empty list instead of throwing an exception.
  • Standardises URLs / makes them compliant with the WebDriver specification
  • Fixed crashlog detection on older devices
  • Improved cleanup of devices on failed server startup
  • Marked 'execute_native' scripts as deprecated. The native script TwoPointerGestureAction was removed, please use the new multi touch implementation.
  • Upgrading to latest Selenium 2.43.1
  • Upgrading to latest Android Atoms



@lukeis lukeis released this Aug 1, 2014 · 474 commits to master since this release

  • Upgrading to latest Selenium 2.42.2
  • Fixed http response encoding header
  • Support for 'activity-alias' manifest tag by adding a new optional capability -launchActivity
  • Adding new background / resume custom api endpoints, available in the client:
    SelendroidDriver.backgroundApp() and SelendroidDriver.resumeApp()
  • Avoid returning duplicate elements for findElementsBy
  • Migrated http-server from webbit to netty
  • Adding new call log feature: SelendroidDriver.addCallLog / readCallLog
  • Fixes: #487



@lukeis lukeis released this May 13, 2014 · 536 commits to master since this release

  • Bumping selenium dependency to version 2.41.0
  • Added support for switching contexts (NATIVE_APP/WEBVIEW)
  • Removed deprecated property 'androidTarget' in selendroid capabilities.
  • Removed default locale 'en_US' in selendroid capabilities
  • Fixes: #362, #371, #338
  • Added command line option -forceReinstall to force installation of Selendroid Server & app under test
  • Logging Selendroid Standalone configured options
  • Element.tagName() should return lower-case string
  • Fixed wrong mapping of StaleElementException (was WebDriverException)
  • Added a unified and configurable logging system for standalone and selendroid server
  • adding support for new 'network_connection' endpoint which will be in the client API for selenium in 2.42



@DominikDary DominikDary released this Mar 21, 2014 · 564 commits to master since this release

  • Rotation Support
  • Fixes: #268, #284, #309, #275
  • Adding support for disabling native events for sendKeys command to support e.g. German umlauts (#7,#110)
  • Added support for sending key events, send text, tap and execute shell command via adb connection
  • removed -installedApp command line parameter of the selendroid-standalone jar
  • Selendroid standalone supports by default already started emulators. Even if they are started manually after selendroid-standalone has been started, they are identified and can be used for test sessions.
  • Minimized create session time by skipping installation of the app under test or the selendroid-server if they are already installed.
  • Support execute async script (#254)
  • Add native execute script action TwoPointerGesture. this is temporary solution until the mobile WebDriver multi touch spec is implemented #292
  • Introducing a sessionTimeout (in seconds) that will automatically stop a session. Default value is 30 minutes.
  • Added support for using 'platformVersion', 'platformName' and 'automationName' in capabilities in order to support Selenium 3.0
  • Added support for using switch context endpoints to support Selenium 3.0. Swith to window mechanism is still available.
  • In order to support Selenium 3, Page source is now returned as an XML (or HTML in the case of HTML-based platforms) document representing the UI hierarchy.
  • Until multi touch support based on the new w3c spec is implemented, there is a native script that can be used for multi touch gestures.