OPhone自动化测试技术介绍

发表于:2010-4-27 13:22

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

 作者:金镝    来源:中国移动开发者社区

分享:

  基于键盘事件和图像识别的自动化测试

  OPhone平台在操作系统层面提供将键盘事件转化为应用程序动作的能力:

步骤 动作
1 Window Manager 收到来自于linux键盘驱动的按键事件。
2 Window Manager 把scancode映射成keycode。
3 Window Manager 把 scancode和keycode都发给应用程序。
4 应用程序对按键事件进行响应。

  OPhone平台还提供了功能丰富的开发调试工具和工具库,如adb、sqlite3、viewserver和ddmlib等,这些为我们探索新的自动化测试方法提供了技术基础。

  像上述的键盘事件,我们就可以通过adb shell input命令发送给设备,同时我们也可以通过adb shell sendevent命令实现对触摸屏的操作。例如,想实现这样的过程:一、进入DCD应用的主界面;二、用向左滑动的触摸屏手势做翻页操作;三、调起该界面的菜单;四、退出DCD主界面,就可以用如下命令实现:

  java代码

 //启动DCD主界面     
 adb shell am start -n oms.dcd/oms.dcd.DcdClient     
       
 //在x向坐标00000095、y向坐标00000007的位置点击屏幕,并保持按下状态     
 adb shell sendevent /dev/input/event0: 0003 0000 00000095    
 adb shell sendevent /dev/input/event0: 0003 0001 00000007    
 adb shell sendevent /dev/input/event0: 0001 014a 00000001    
       
 //保持y向坐标不变,沿00000055到00000010的x向路径横向滑动     
 adb shell sendevent /dev/input/event0: 0003 0000 00000055    
 adb shell sendevent /dev/input/event0: 0000 0000 00000000    
 ……     
 adb shell sendevent /dev/input/event0: 0003 0000 00000010    
 adb shell sendevent /dev/input/event0: 0000 0000 00000000    
       
 //结束按下状态     
 adb shell sendevent /dev/input/event0: 0001 014a 00000000    
       
 //发送一个菜单键值,调起菜单     
 adb shell input keyevent 1    
       
 //发送一个Back键值,收回菜单     
 adb shell input keyevent 4    
       
 //再发送一个Back键值,退出DCD界面     
 adb shell input keyevent 4

  如果把这样的方法应用到具体测试用例上,那么就是一个完整的自动化测试过程了。
43/4<1234>
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号