码迷,mamicode.com
首页 > 其他好文 > 详细

快速开始

时间:2018-08-09 14:53:11      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:auto   连接   end   方法   drive   测试的   androidui   bsp   相对   

准备

1、被测试的app应用(apk包)

2、运行appium server 就是appiumdesktop 

  启动后,点击Adcanced

  勾选Allow Session Override

  然后点击start Server 启动appium server

3、启动被测app的运行环境 

  真实设备或者模拟器

4、把apk包安装到运行环境(3中)

  虚拟器直接拖拽

       真机可以使用命令安装或者直接放到手机中安装

下面写脚本例如开发者头条中的登录注册功能

脚本略过

查看包名称用aapt dump badging XXX.apk > d:\a.txt && d:\\a.txt

选择APP界面元素

查看工具

web自动化开发的时候,要找到元素,我们是根据浏览器开发者工具(F12)来查看元素的特性,根据这些特性,比如:id,classname,tagname,或者CSS和xpath选择到元素。

而安卓查看界面元素,最常用的是Android SDK中的uiautomator,它在.\android\sdk\tools\bin\下面

手机和电脑连接之后,打开uiautomator.bat就能查看手机页面中元素

跟web的不同点:

  不能自动刷新

  鼠标移动到某个元素上,某个元素就有虚线红框子,同时右边会高亮显示当前的元素,确定要查看元素,就单击一下,虚线变实线

还有一种查看元素的方法,用appiumserver中的inspect,这个工具可以查看元素是否能定位到,便于调试相当于web页面中的ctrl+F

元素属性

index:

text:

resource-id:

class:

package:

contet-desc:用来描述元素的用途和特性

bounds:界面中元素的位置,左上角和右下角的坐标

选择元素的代码

find_element_by_XXX:查找符合条件的第一个元素

find_elements_by_xxx:查找符合条件的所有元素

选择元素的方式

1、ID(就是resource-id)

2、classname

3、XPATH

web自动化的时候,最灵活的定位方式就是CSS和xpath了,经常用他们来定位一些比较难定位到的元素,例如没有ID,没有唯一name的属性,甚至几乎没有什么属性,因为css和xpath可以根据上层节点的相对位置来定位

在appium中,不支持使用css可以使用xpath来定位元素

写法如下:

driver.find_element_by_xpath(‘//eles//ele2[@attr="a1"]‘)

特别注意的是,以前做web自动化的时候xpath中每个节点名是html的tagname,在appium中,每个节点名对应的是class属性的内容

 

注意:

  @1:appium不支持by_name,可以使用find_element_by_AndroidUiAutomator("text("我的")")  

  @2:不支持by_cssselector,可以使用by_Xpath

如何查看元素是否唯一:把xml导出到文件中,uiautomator左上角第四个图标

操作元素

webelement常用的调用方法是send_keys和click方法

1、tap

tap和click类似,都是点击界面,最大的区别,tap是针对坐标而不是针对找到的元素。有时候,我们难易定位怨毒的时候可以使用这个tap方法

写法如下:

  driver.tap([(650,1250)],300) 两个参数,第一个表示点击的坐标,第二个表示停留的时间毫秒

2、swipe

滑动

写法如下:

  driver.swipe(50,500,50,1230,1000)  5个参数分别表示,起始位置的X坐标、起始位置的Y坐标、结束位置的X坐标、结束位置的Y坐标,滑动所消耗的时间,短表示滑动的快,时间长表示滑动的慢

3、通知查看

系统通知:比如短信通知、微信通知、自己应用对应的通知,安卓打开通知的方式,可以是从屏幕顶端下滑来查看通知。其实appium提供了可以直接打开通知栏的方法

写法如下:

driver.open_notifications()

4、按键操作

press_keycode(数字)

比如,返回键。keycode_back,对应数字4

driver.press_keycode(4)

home键盘,数字3

查看按键对应的数值,网址:https://developer.android.google.cn/reference/android/view/keyEvent.html

使用真实设备进行自动化

有时候要坐不同手机的兼容性测试,必须在真实的手机设备上进行测试

有的应用在模拟器上,种种原因,运行不了。比如微信。

1、USB线连接手机

2、打开开发者选项中的USB调试模式

3、电脑的命令窗口中输入adb devices -l

 

快速开始

标签:auto   连接   end   方法   drive   测试的   androidui   bsp   相对   

原文地址:https://www.cnblogs.com/xiao-qing/p/9448663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!