Skip to content
A WebDriver server for iOS that runs inside the Simulator.
Branch: master
Clone or download
adamjernst and facebook-github-bot Kill FBStrongify/FBWeakify
Summary:
Time to let these things go; they're already deprecated:

https://our.intern.facebook.com/intern/wiki/Retain-cycles-in-ios/#on-fbweakify-and-fbstron

Reviewed By: d16r

Differential Revision: D14954360

fbshipit-source-id: d42b169f5cc199d99e999d96ad1755c441189a63
Latest commit f759d87 Apr 16, 2019

README.md

WebDriverAgent GitHub license Build Status Carthage compatible

WebDriverAgent is a WebDriver server implementation for iOS that can be used to remote control iOS devices. It allows you to launch & kill applications, tap & scroll views or confirm view presence on a screen. This makes it a perfect tool for application end-to-end testing or general purpose device automation. It works by linking XCTest.framework and calling Apple's API to execute commands directly on a device. WebDriverAgent is developed and used at Facebook for end-to-end testing and is successfully adopted by Appium.

Features

  • Works with device & simulator
  • Implements most of WebDriver Spec
  • Implements part of Mobile JSON Wire Protocol Spec
  • USB support for devices
  • Inspector endpoint with friendly user interface to inspect current device state
  • Easy development cycle as it can be launched & debugged directly via Xcode
  • Unsupported yet, but works with tvOS & OSX

Demo Video

Getting Started

To get the project set up just run bootstrap script:

./Scripts/bootstrap.sh

It will:

  • fetch all dependencies with Carthage
  • build Inspector bundle using npm

After it is finished you can simply open WebDriverAgent.xcodeproj and start WebDriverAgentRunner test and start sending requests.

More about how to start WebDriverAgent here.

Known Issues

If you are having some issues please checkout wiki first.

For Contributors

If you want to help us out, you are more than welcome to. However please make sure you have followed the guidelines in CONTRIBUTING.

License

WebDriverAgent is BSD-licensed. We also provide an additional patent grant.

Have fun!

You can’t perform that action at this time.