一。appium原理
appium是开源的自动化测试框架,支持native,h5和混合应用
appium通过webdriver protocol驱动ios和android以及fireFox os应用
appium自动测试需要重新编译app
appium支持多平台多语言,java,python,php等
server也是跨平台的,使用mac OS X,windows,linux
appiumserver端口:4723
appium常用接口
接口
说明
currentActivity()
获取当前activity
isAppInstalled(String bundleId)
根据bundleId来判断应用是否已经安装
installAPP(String appPath)
安装app,appPath为本地路径
removeAPP(String bundleId)
卸载app,bundleId在android中代表包名,ios有专门id
closeAPP()
关闭应用,置于后台
launchApp()
启动应用
resetApp()
先closeApp在launchApp
pullFile(String remotePath)
将设备文件pull到本地磁 盘
pushFile(String remotePath,base64Data)
把本地文件push到设备上
setNetworkConnection()
设置手机网络连接状态
sendKeyEvent(int key)
按下某个键
tap(int fingers,webElement element,int duration)
点击element控件中心按下,duration毫秒后松开,重复figers次
tap(int figers,int x,int y,int duration)
点击(x,y)安下,,duration毫秒后松开,重复figers次
swipe(int startx,int starty,int endx,int endy,intduration)
从(startx,starty)滑到(endx,endy),分duration步滑,每次间隔5毫秒
press(webelement el)
执行press操作
moveTo(webelement el)
以el为目标,从一个点移动到该目标上
waitAction(int ms)
等待ms秒
longpress(webelement el)
控件长按
rotate(ScreeOrientation orientation)
设置屏幕横屏或竖屏
scrollTo(String text)
滚动到某个text属性的控件
pinch(webelement el)
以2个手机操作控件,从对角线向中心店滑到
zoom(webelement el)
与pinch相反