1、最近打算把公司的自动化 UI 框架替换成 Appium 于是了解了一下这 Appium 这个框架的底层原理。
原本的 UIAutomation 的通信是通过 instrument 简介实现的。而 Appium 是机遇 WDA 实现。看了下 WDA 的原理,是 Facebook
开发的,链接进了 XCTest 框架。我就有一个疑惑了,根据我查找的资料,苹果提供的 XCTest 进行 UI 自动化,是必须内嵌进项目
代码种。但是 Appium 进行的是黑盒测试。这就有点解释不通了?
2、是否 WDA 的作用就是在于手机端接受服务器的命令,然后转换成相应要调用的苹果 API。
因为我看到工程中 dump 出了大量的 XCTest 的私有头文件,然后调用苹果这些原生私有 API 进行了这项操作。
有了解的么?希望和你讨论。