build 2016 - p499 - ui test automation for browsers and apps using the webdriver standard

9
#Build2016 UI Test Automation Yosef Durr Windows Developer Platform Gopinath Chigakkagari Visual Studio

Upload: windows-developer

Post on 13-Jan-2017

203 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

#Build2016

UI Test AutomationYosef Durr Windows Developer PlatformGopinath ChigakkagariVisual Studio

Page 2: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

UI Test AutomationWhat Developers WantSingle API surface across platformsScripting language of choiceSupport testing a variety of devices, form factorsSupport out of proc testing

Selenium WebDriverMany languagesMany platformsMany test frameworks The constant: WebDriver JSON wire protocol

Page 3: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

Demo: Selenium

Page 4: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

Selenium for appsWhy it makes senseSelenium works well for solid reasons• Open Philosophy (open standards, support a variety of tools and languages)• Elegant Architecture (WebDriver JSON Wire Protocol)

App Developers face a fragmentation challenge• You need a test framework built on open standards

AppiumOpen source project (http://appium.io)Founders subscribe to Selenium’s• Philosophy• Architecture

How is Appium different from Selenium?• Chose to not implement browser specific Selenium APIs (e.g. cookies)• Added new APIs called Appium extensions (e.g. app install)

Page 5: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

NewService

Appium Command Flow

Your Test Scripte.g. C#

Appium Test Runner

e.g. Visual Studio

Your Appnot

instrumented

Platform APIsUser Interface Automation

Appium ServerSeparate Process

WebDriverHTTP + JSON

Find Elementhttp://127.0.0.1:9999/session/:Id/element/:Id/attribute/:nameGet Display Texthttp://127.0.0.1:9999/session/:Id/element/:Id/textClick a Button http://127.0.0.1:9999/session/:Id/element/:Id/click

Page 6: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

New Service for WindowsWhat is it?Service you deploy on the target Windows deviceProvides Appium Server functionality• Runs a webserver listening for webdriver calls• Leverages native User Interface Automation (UIA) API’sNot open source… we’re investigating options

Where can you get it?Free Download on Microsoft Download Center : https://www.microsoft.com/en-us/downloadPreview version available nowExpect frequent updates

Device support?Now: PCNext: Mobile, Future: Xbox

Page 7: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

Working with Appium“The Appium project is thrilled to have Microsoft developing its own JSON Wire Protocol-based automation technology. Not only will it make it a breeze to integrate with Appium and provide Windows app automation to our users, it shows a commitment to adopting an open standard that has never been seen outside of the browser-based Selenium world. Appium staked its philosophy on an open automation standard for many reasons, and one was the hope that platform vendors, like Microsoft, would themselves choose to support the standard, making automation more painless for everyone. We heartily applaud Microsoft's efforts in this area and look forward to a long relationship working together to make app automation more awesome.”

Jonathan LippsAppium Co-Founder

Page 8: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

Demo: Appium

Page 9: Build 2016 - P499 - UI Test Automation for Browsers and Apps Using the WebDriver Standard

Thank you!DownloadsNew Windows Test Service: http://aks.ms/drivemyapps

Get InvolvedDevOps Testing http://aka.ms/devopstest“UI Test” on http://wpdev.uservoice.comJoin the Appium community on http://appium.io

Contact [email protected]@microsoft.com