在IOS端,Appium同样使用WebDriver协议。
与Android端测试框架不同的是,Appium IOS封装了apple的 Instruments框架,主要用了Instrument里的UI Automation(Apple的自动化测试框架),然后在设备中注入bootstrap.js进行监听。
Appium在IOS端工作流
1.客户client端是test script,即测试脚本
2.Server是appium在服务端开启的(默认端口是4723),appium server接受client发送的请求,解析请求内容,调用对应的框架响应操作。
3.appium server调用instruments.js启动一个socket server,同时分出一个子进程运行instruments.app,把bootstrap.js注入到设备用于和外界交互。
4.bootstrap.js把执行的结果返回给appium server
5.appium server再把结果返回给appium client。
所以可以看到android与ios区别在于appium 将请求转发到bootstrap.js或者bootstrap.jar.然后由bootstrap 驱动UIAutomation和UiAutomator去devices上完成具体的动作。
网友评论