【摘要】进行wince/winmobile系统智能手机测试时,其中最重要的一项就是hopper测试,也叫MTTF测试,本文就有关问题将给予详细介绍。 【关键词】 hopper、MTTF 一、认识hopper Hopper test听起来很神秘,那么究竟什么是hopper呢? 实际上,Hopper就是一个可执行文件——hopper.exe,该文件是可以在PPC/SP等Windows嵌入式操作系统上自动运行的一个可执行文件。 Hopper test正式的说法为MTTF Test—Mean Time To Failure Test,即平均失败时间测试,或称平均无故障时间测试,也有人将其称为压力测试(stress test)、稳定性测试(Stability test)、可靠性测试(Reliability Test),总之,hopper就是一个测试系统的稳定性和可靠性的一个自动化测试工具。 二、Hopper测试 Hopper运行后会不间断的无规律的快速地对被测设备执行一系列的操作,如按键/运行程序/数据输入等,1分钟内hopper执行的动作可超过80个。 hopper测试的内容包括: 1.应用程序,如Media player、Mobile Word、Mobile Excel等windows自带的应用程序或者第三方软件; 2.菜单项,Hopper会对菜单项进行一些打开关闭等任意操作; 3.UI(用户界面); 4.数据输入,如电话号码输入、电话薄创建、任务创建等; 5.驱动部分。 总之,hopper测试为完全任意性,触角可以伸到系统的任何部分,进行hopper测试时,可以选择以下两种方式:一、连接KITL进行测试;二、独立设备测试。 每种方式各有自己的优缺点,使用KITL时可以对运行状态进行查看、控制等,通过进行有关参数设置来改变hopper运行状态,KITL是进行debug的最佳选择。 独立设备测试的好处在于测试出的结果比较准确。缺点就是不便于状态的跟踪、问题的分析。在此,我们使用使用第二种方式进行进行测试。
上图为开发阶段运行Hopper测试示意图。由上图知,hopper测试贯穿整个软件开发整个过程。 Notes: 1.关于通过KITL连接使用hopper中涉及到很多方面,如参数的设置等,本文未进行相关介绍; 2.在hopper运行的时候,也可以手动参与进行测试,如进行有关按键,同样这些按键也为有效操作。 三、关于logger 与hopper对应的有一个logger.exe文件,logger的作用是记录hopper运行时一些信息,以便开发人员查看有关记录,分析失败原因。Logger和hopper往往是一起使用。 Logger的使用是将logger.exe文件拷贝到被测设备上,然后运行该文件,然后运行hopper,logger所产生的信息就会自动生成一个debug.txt文本。Debug文本是一个很大的文件,运行hopper一天所生成的debug.txt文件大约有 *开发人员可以将文件拷贝到PC上进行查看、分析。实际上本工具也很少使用,其记录信息没有多大价值。 四、hopper计算 微软对hopper测试的时间问题有两个要求,一个是平均时间,一个是中值时间,平均时间要求超过20个小时,中值时间要求达到25小时,二者需同时通过才能满足微软要求。 NSTL在进行CIT测试时,共做10台机器10个case的hopper测试,如果运行时间超过25个小时,则按照25个小时计算,否则按照实际运行时间计算。 平均时间就是10台机器的运行时间加总除10. 中值时间:10个测试结果按照时间从短到长的顺序排列,取中间两个case,即5和6的时间的平均,这样得到的值既为中值时间。 为了测试结果更可靠、准确,我们在测试过程中可以多些case
五、其他工具 为避免在进行hopper测试时拨出一些紧急号码,微软开发了以下相关工具:dialrequest.dll, noemesetup.exe and restoreEME.lnk. 使用dialrequest.dll, noemesetup.exe可以跳过紧急号码拨叫,用restoreEME.lnk可以恢复(呼叫)。 使用时,先将设备重新启动,然后将dialrequest.dll, noemesetup.exe拷贝到被测设备\Windows文件夹中,运行noemesetup.exe文件,10s内有关系统配置将生效,之后无法进行紧急号码呼叫。 恢复时将restoreEME.lnk文件拷贝到\Windows\Start Menu\Accessories\ folder中,然后选择运行它,10s内可以恢复,之后又可以进行紧急号码呼叫。
Notes:对设备进行恢复也可以通过reflashing or clean registry进行。这些工具在实际测试中很少用到,在此仅做了解。 六、注意事项 1.Hopper执行的时间应该从程序可以跑起来的时候就执行,执行的越早,发现问题越早,解决问题越容易,否则到后期等系统功能等都实现的时候发现问题,再去解决,所耗费的时间、精力会大得多得多。 2.Hopper测试应从系统可以跑起来一直到RTM整个开发过程,如果在后期测试发现发现有问题,应逐个模块的关闭来分析造成问题的原因,如关闭Radio可以避开Radio的影响; 3.测试时最好不加入第三方软件,首先确保系统本身的无问题,然后再逐渐加入第三方软件进行集成测试、系统稳定性测试; 4.不要在连接USB的情况下进行测试,这样会破坏PC及outlook等数据; 5.不要使用有效的SIM卡进行测试,以免hopper拨出号码,造成不必要的影响; 6.运行时不要存储有关数据,hopper测试可能是破坏性的,以免破坏有关数据,进行hopper测试时最好将有文件进行备分,重新启动系统两遍再测,最好是恢复出厂值后再进行测试! 7.在测试时要接入充电器,以免测试中途电池电量不足自动关机。 原始链接:http://blog.51testing.com/html/84/66584_itemid_4258.html |