Mobile Test Automation with Appium
上QQ阅读APP看书,第一时间看更新

XCUITest

XCUITest is an automation framework introduced by Apple with the iOS 9.3 version. However, from iOS 10 and later versions, it's the only supported automation framework.

Appium 1.6.0 uses Apple's new XCUITest framework, which supports iOS 10/Xcode 8. Appium internally uses Facebook's WebDriverAgent project to support XCUITest. For the older iOS version (<=9.3), Appium uses Apple’s UIAutomation library. Typical usage would be to pass the following in desired capabilities:

automationName: XCUITest

Facebook WebDriverAgent is a WebDriver server implementation for iOS. It is used to remote control connected devices or simulators and allows one to launch an app, perform commands (such as tap and scroll), and kill applications.

The UIAutomation library communicates with bootstrap.js, which is running inside the device or simulator to perform the commands received by the Appium client: