Client/Server架构,运行的时候Server端会监听一个端口,然后接收由client发送来的命令。翻译这些命令,把这些命令转成移动设备可以
理解的形式发送给移动设备,然后移动设备执行完这些命令后把执行结果返回给appium server,appium server再把执行结果返回给client。
在这里client其实就是发起命令的设备,一般来说就是我们代码执行的机器,执行appium测试代码的机器。狭义理解,可以把client理解成是代码,
这些代码可以是java/ruby/python/js的,只要它实现了webdriver标准协议就可以。
Session:每个Client连接到Server以后都会有一个Session ID,而且Client发送命令到Server端都需要这个Session ID,因为这个seesion id代表了
你所打开的浏览器或者是移动设备的模拟器。所以你甚至可以打开N个Session,同时测试不同的设备或模拟器。
Desired Capabilities就是一个键值对,设置一些测试的相关信息来告诉Server端,我们需要测试iOS、还是Android,或者换是WebApp等信息。
Appium Server是Node.js写的,所以可以直接用NPM来进行安装。
Appium Clients是Mac OS和Win下提供的GUI,不需要装Node.js,方便测试人员操作。