appium和自带的webdriver,SDK自带的App UI自动化测试的java库
Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架
Andriod端用了webDriver和Bootstrap.jar,调用UiAutomator的命令
1.client端调用了了webdriver测试脚本(pycharm来充当测试的脚本,使用pybon来启动相关的测试)
2.中间启用的是appium的服务,起了一个server selenium -p 4723 -bp 4733(如果需要的时候开启wdadriveragent)
3.把请求转给Bootstrap.jar.监听4724端口,可以说是py跑的脚本用appium来嗲都用UiAutomator的命令来实现
4.最后Bootstrap将执行的结果返回给appium server
5.appium server再讲结果返回给appium client
IOS的不同是ios封装了apple的Instruments框架,用了里面的UI Automation
3.appium server调用instruments.js 启动⼀一个socket server,同时分出一个⼦子进程运⾏instruments.app,将bootstrap.js(一个UIAutomation脚本)注⼊入到device⽤于和外界进行交互
Android并发测试和命令行
Appium提供了在一台设备上启动多个Android会话的方案。
appium -p 4492 -bp 2251 -U 32456
启动多个Android会话的重要指令包括:
指令 | 功能 |
---|---|
-p | Appium的主要端口 |
-U | 设备id |
-bp | Appium bootstrap端口 |
–chromedriver-port | chromedriver端口(当使用了webviews或者chrome) |
–selendroid-port | selendroid端口(当使用了selendroid) |