DEPRECATED Please see https://github.com/2gis/Winium.Mobile for latests releases. Selenium Driver for automated testing of Windows Phone 8.1 Silverlight applications.
C# Python Other
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
WindowsPhoneDriver
.gitattributes
.gitignore
PrepareRelease.ps1
README.md

README.md

DEPRECATION

Please use https://github.com/2gis/Winium.Mobile for latests releases of Silverlight auotmation. Use https://www.nuget.org/packages/Winium.Silverlight.InnerServer/ package instead of WindowsPhoneDriver.InnerDriver.

This repository is no longer maintained. Code from this repository has been merged into Winium.Mobile project. Any new issues, pull requests, bug fixes, etc should be created in https://github.com/2gis/Winium.Mobile from now on.

Windows Phone Driver

Selenium Driver for automated testing of Windows Phone 8.1 Silverlight applications. For automated testing of Universal Apps see Windows Universal App Driver.

This repository hosts the code for the Windows Phone driver. You can use it for testing of native Windows Phone 8.1 applications. Currently it implements only limited subset of WebDriver JSON Wire Protocol and supports testing only via an emulator (Windows phone 8.1).

Driver contains of two parts: Outer and Inner. To run tests you will need to add WindowsPhoneDriver.InnerDriver to the app you want to test and start WindowsPhoneDriver.OuterDriver (Remote WebDriver to send Json Wire Protocol commands to).

Requirements to run tests using Windows Phone driver

  • Windows 8 or higher
  • Windows phone 8.1 SDK
  • You will also need Visual Studio 2013 with Update 2 or higher to build driver.

Usage

  1. Build solution

  2. In tested app project, add reference to WindowsPhoneDriver.InnerDriver and WindowsPhoneDriver.Common (we also have NuGet package, but it might lag behind latests version of source code)

  3. In your app’s source code locate place where RootFrame is set (usually in PrepareApplication if you use Caliburn.Micro or App.xaml.cs for vanilla app) and add

    AutomationServer.Instance.InitializeAndStart(RootFrame);

    or (will include driver only for debug build)

    #if DEBUG
        AutomationServer.Instance.InitializeAndStart(RootFrame);
    #endif // DEBUG

    where RootFrame is visual root of application.

  4. Write your tests using you favorite language. In your test use app desired capability to set path to tested app's xap file (python example).

    ...
    self.driver = webdriver.Remote(
                command_executor = 'http://localhost:9999',
                desired_capabilities={
                    "app": r"C:\testApp.xap"
                })
    ...
    # find all Textblock elements
    blocks= self.driver.find_elements_by_tag_name("System.Windows.Controls.TextBlock")
  5. Start WindowsPhoneDriver.OuterDriver.exe

  6. Run your tests