由于最近我也在研究手机终端的
自动化测试, 但目前还关注在BREW平台之上, 进展还比较顺利,不久也会写一篇比较系统的
文章, 看到这篇文章, 非常欢喜, 毕竟类似的资料非常得少, 很欣赏这位朋友的分享精神, 特收藏,
学习借鉴!
51Testing软件测试网k F(Cf5F#Pd}转自: http://www.51testing.com/html/62/n-128462.html
*mc'H5_h6Sy0aY"H'Y.c*]d1m{$Z0手机软件MMI的
自动化测试需要手机终端和计算机进行通讯,所以通讯方式可以选择串口或者蓝牙,鉴于稳定性和易用性,设计简单程度,串口通讯是非常简单的很容易实现的。
FG3M ?qtl0 然后自动化测试工具选择脚本语言的问题,我们可以选择VBScript,Perl,Python,比较一下,Python比较强大,Nokia的一些工具就是python做脚本的。51Testing软件测试网[W%n*K$W*D+V/NX({
C:JY%D` ?s0R0 两者之间的通信机制:可以使用ATcommand进行通信,出了GSM标准支持的ATC,还要有手机专门自己的命令来支持远程终端操控手机。比如键盘控制,长按短按等。
Qb^0T6].|U:Bu$Y
U'A051Testing软件测试网%Bm5J O?
手机需要暴露一些接口,比如截图,文字识别,返回图像,文字等。这样可以做自动化验证,做到无人值守。这些均需要手机来支持。比如设计手机要有这样的接
口 BOOL GetPicture(int top, int bottom, int right, int left, BITMAP
& bitmap);
这样通过ATC发过来命令然后手机解析一下,得到top,bottom等信息,然后得到bitmap返回。文字识别需要python来完成,char*
GetStringFromPic(Point pt, const Bitmap*
bitmap);我就用C++来表示了。这样在脚本里面就可以进行比较文字了。
1j+|.\6_7t/[ ? O04gc
f:Dd0 更进一步,支持录制脚本功能,比如按下某个键,串口信息,监听串口信息,这样脚本解析按下的键,然后判断在转译成脚本语言。Key();
DG6DB&k051Testing软件测试网/VN[ F@D!zI
关于手机只需要支持识别ATC参数,然后传回要的结果,我想主要是通过图片来返回,因为这是模拟人工测试的原理,我按下某个键,就会出现什么结果,这样
需要返回图片即可,然后脚本客户端需要对图片进行处理,要么进行比较图片内容,要么进行文字识别进行文字对比,这样可以实现测试自动化。51Testing软件测试网)f6b%Y7z8[@
4~6G(W(~;H/H]3r1}0 我们这次采用的是WINCE5.0的内核,所以上面说了一堆,其实可以概括为几个简单的步骤:51Testing软件测试网!\{#_w6e!a
51Testing软件测试网P$\ En3Ym!^rR 第一,下载安装Activesync51Testing软件测试网t5b!qOp*?c3]iy
%p'ky)A:^6VX0 第二,下载安装Activesync remote display51Testing软件测试网y/|`.{Q8`
3N)d*H1hxB,@8~,@0 第三,如果是使用模拟器,还需要下载安装connect emulator with activesync
xJ~E.B7Gq R051Testing软件测试网s1pb2ac#X 第四,把设备和PC通过Activesync连接51Testing软件测试网5a6l'Y2o7_Rx3iE1I"v
P*QK,OnA+z0 第五,把..\ActiveSync_Remote_Display\devices\wce400\armv4t目录下的cerdisp2.exe and KillProc.exe拷贝到你的设备windows目录下面
}.[4CB,},KIPv"xi*y-Y0aZO/Xs#Oz0 第六,运行activesync remote display程序,出现“The OS or CPU of this device is unknown to this application”的信息不管它,点OK就行
hbB6J$ki)cf051Testing软件测试网C)^0m)k2f{%M$j 这个时候你会看到PC机模拟器与你手上的真机屏幕实现了完全同步,而且可以在模拟器和手机上同时对手机进行操作,俺在网上找了好久才成功的。51Testing软件测试网6j5n{8eF$UC
51Testing软件测试网&J+glB*H 微软提供的这个组件确实为WINCE的手机自动化测试提供了一条捷径,但是我发现同步映射的过程中,手机和PC间通信时间还存在一些问题,一个按键动作从模拟器到真机屏幕可能需要0.5秒的时间(便宜没好货)51Testing软件测试网 X8i1c1OK:K [
S
51Testing软件测试网5\+V#l(LA\8q1G9n PS: MTK OS 也可以通过同步完成部分功能的自动化测试,比如电话本存储/SMS收发等等,偶会在以后整理出来再与大家分享。51Testing软件测试网;h.k{LaX
,}m7C[+L\4GN6D051Testing软件测试网P;~QA3gX\
51Testing软件测试网:tz'r,L^X