Java实现渠道包自动化测试

发表于:2016-11-04 11:40

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:成艳艳    来源:51Testing软件测试网采编

分享:
  基于坐标的适配
  很简单就是按照屏幕的长宽比,得出新手机上的横坐标和纵坐标。
  比如我使用手机A来定位到两个坐标Xa,Ya,手机A的屏幕尺寸是Wa,Ha;而手机B的屏幕尺寸是Wb,Hb;比例关系如下:
  Wa/Xa = Wb/Xb,Ha/Xa=Hb/Yb
  于是产生了2个方法专门转换X和Y轴的坐标:而针对坐标的drag和touch操作都会调用这两个方法先转化下坐标,便于适应其它屏幕尺寸的手机。
  
  基于Id操作控件
  一般除了滑动(drag)这类操作,对控件的操作用控件id来实现当然准确,比如:
  
  这里使用HierarchyViewer解析界面元素,来根据控件id获取控件的位置,这个位置是一个Point对象,通过获取其X和Y坐标来进行基于坐标的touch操作,从而控制控件。
  
  从图中可以看出HierarchyViewer类中提供的方法主要是用来定位控件相关的,包括根据ID取得控件,根据控件取得控件在屏幕的位置等。
  我这里就主要用到了以下两个方法:
  findViewById(String):通过控件的ID来获得代表用户控件的一个ViewNode对象。注意这里需要填写的id的可以通过应用源码或者HierarchyViewer工具来获取。方法返回的一个ViewNode的对象,代表目标控件,拥有大量控件相关的属性。
  getAbsolutrPositionOfView(ViewNode):这个方法的目的是获得目标ViewNode控件的中间点的绝对坐标值,但是对Menu Options下面的控件不适用。
  剩下的就是调用封装好的接口,进行渠道包的安装、卸载和启动。
  对于云课堂安卓除了安装卸载启动,针对欢迎页的图片进行了比较来验证启动是否成功。如下。
  
  最后用FatJar将其打成JAR包,安装包路径通过运行参数传入即可。
  脚本完成后的确也大幅的节省了渠道包的测试时间。
22/2<12
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号