关于手机测试

上一篇 / 下一篇  2013-02-02 15:15:06

关于手机测试

        由于手机测试涉及公司机密,所以在不泄露公司机密前提下,我尽量让大家一起学习,分享我知道的知识和技能。


        手机测试是一个很大的题目,涉及到硬件测试和软件测试,还有结构的测试,比如抗压,抗摔,抗疲劳,抗低温高温等,结构上的设计不合理,会造成应力集中,使得本身外壳变形,对于翻盖手机,盖子失效,还有其他严重问题。硬件测试一般都有严格的物理电气指标,也有专门的仪器,这里的仪器,不再多说,一般如果是专业的测试人员,不会陌生吧。


        因为我们人员编制问题,所以我对于各项测试,都或多或少了解一点。但是手机测试,一般是指软件测试,这个一方面也说明了软件在手机上的重要性。一方面也说明手机测试的难度。因为其它的测试都有明确的指标,严格的操作规程,还有各种仪器。下面说的手机测试一般都是手机软件测试,以后不在重复说明。


        在说明手机测试之前,我觉得应该了解一下什么是嵌入式操作系统,这是个时髦的名词,虽然我们已经被嵌入式操作系统的产品所包围,但是却不一定能说清楚,什么是嵌入式操作系统,而学校的课堂上,讲的也不多,所以很多人对此感到云绕雾罩。
        简单的说,一个嵌入式操作系统就是为完成某种特定功能而专门开发的操作系统。这个操作系统的功能很明确,不像大型操作系统,范围广泛,大千世界,尽在其中,而嵌入式操作系统只为完成某一项或者几项功能。


        再说一下手机的特殊性,也就是要求对响应时间达到一定限制范围。也就是所谓的实时操作系统,如果一个电话不能在90秒内接听,那么对方会挂掉而你的操作系统还没反应过来,那么这个操作系统无疑是失败的,这是对嵌入式操作系统实时性的要求。


        作为一个测试人员,你必须了解这些,可能对一些软件开发人员,他不必很在意这些方面,因为他只要了解自己模块的入口说明和出口说明就可以。但是测试人员不行。高级测试人员应该了解嵌入操作系统的特点,这个系统不象WINDOWS,有图形界面可以输入输出,也不象DOS用命令行模式,所有这些,都需要自己编写一个编辑器,编写一个交互界面,编写一个输入输出界面,在WINDOWS中,利用一些API和一些MFC,不用考虑硬件的问题,因为系统已经完成,而WINDOWS是讲究和硬件分离的,因为这样可以保护系统不受侵入。而在嵌入式系统里面,这一些都要求和硬件息息相关。


        手机测试中,软件出现的故障不一定是由于软件的错误,也可能是由于没有考虑到硬件和软件没有完美的结合。因此我们在了解操作系统同时,也要了解一下其他的手机硬件性能,比如CPU ,比如存储器。CPU的处理运算能力是以MIPS来衡量的,当然越快越好,但是也是和成本相关的,我不知道现在MOTOROLA T39的CPU,但是,因为是PDA,又是手写屏幕,所以菜单特别的慢。关于存储器需要专门做出说明,因为这里的存储器很特别,不象PC,手机没有硬盘!

        作为一个新来的,可能对嵌入式操作系统有了一个大致了解了,那么对他的程序又是如何的呢,难道和以前的程序不一样?
        其实,嵌入式系统的编程语言一般有C,而且也是最多的,也有其他语言。比如C++在最开始时候是用汇编的,但是汇编难懂,而且也不容易移植,渐渐的被C代替,不过即使如此,在启动程序时候,要启动板子,也就是电路板时候,还是需要用一些汇编语言完成。
        作为一个嵌入式系统的程序,和在PC上运行着的程序没有任何不同,唯一不同可能是在PC上运行的程序,你可以看到结果——如果你用输出语句的话,而在这里,你是看不到结果的。除非你加上LCD硬件,然后编写了LCD驱动程序,然后再编写显示程序。编写嵌入式程序,一切都要自己解决。


        我们的手机如果不是认为把电源切断的话,或者在电源消耗到一定程度的话,是会一直在使用的,所以,手机程序是一直在运转的,就是说一直在循环,这个,对于了解嵌入式程序,应该是个好材料——嵌入式程序就是一个无限循环的程序,除非关掉电源和电源因素,这里也有一个测试点:硬件中断是最高级的,它会终止你的程序,即使你现在的程序级别很高,比如通话,如果没电了,一切会 over.手机程序就是在一个无限循环的程序,什么时候跳出这个无限循环?你关机吧,如果感到不高兴,把电池卸下来,因为有可能进入死循环,而关机键失效了,——只好通过取下电池了。

        这里要专门说明一下存储器,因为很多手机毛病都和存储有关,而且很多问题都和存储相关,计算机的存储是关键,而手机更是关键,因为计算机有硬盘作为存储,而手机所有的都在存储器里。存储器分为几类,RAM 随机存储器,ROM随机只读存储器,还有现在出现一些的闪存,以及电子可编程存储和非易失存储起。一个一个到来。


        RAM 随机存储器,其中又有SRAM(静态RAM)DRAM(动态RAM),SRAM,只要电源开着,就会保存,我们打电话,有些最后拨打的号码,暂时是存在SRAM中的,不会立刻写入通话记录。只有正常关机,才会写入,如果取电池的话,是不会写入手机的通话记录的,如果在通话记录中出现了已经拨打电话,但是没有记录的情况,那么有可能和这个存储器有关,可能是你的软件上错误,也可能是硬件。DRAM在手机上用的不多,因为保留数据时间很短,从价格上看,SRAM是非常昂贵的,而DRAM相比很便宜。
        ROM也有几种,PROM可编程ROM 和EPROM可擦除可编程ROM两者区别是,PROM是一次性的,也就是软件灌入后,这个就完蛋了,这种是早期的产品,现在已经不可能使用了,而EPROM则是通用的存储器,这些存储器不符合手机软件产品,一般使用ROM少。


        其他FLASH
        这是近来手机采用最多的存储器,这种存储起结合了ROM和RAM的长处,但是不属于RAM也不属于ROM.
        手机大量采用的NVRAM 非易失存储器 和SRAM属性差不多,EEPROM 电子可擦出可编程存储器 ,闪存,ROM的后代。手机软件一般放在EEPROM中,EPROM是通过紫外光的照射,擦出原先的程序,而EEPROM是通过电子擦出,当然价格也是很高的,而且写入时间很长,写入很慢,所以前面提到的电话号码,一般先放在SRAM中,不是马上写入EEPROM,因为当时有很重要工作要做——通话,如果写入,漫长的等待是让用户忍无可忍的。


        NVRAM 是一个很特别的存储器,它和SRAM相类似,但是价格却高很多,由于一些数据实在重要,断电后必须保持这些数据,所以只能存放在这里,一般和个人信息有关的数据会放在这里,比如和SIM卡相关数据。容量大小也只有几百字节。
        闪寸存储器是所有手机的首选,综合了前面的所有优点,不会断电丢失数据(NVRAM)快速读取,电气可擦出可编程(EEPROM)所以现在手机大量采用,说了这么多存储器,可能比较糊涂了,这么多存储器,究竟采用哪种呢,在手机发展中,各种存储器都用过,至于现在,各种手机采用的存储器是不同的,这个和成本相关,各种存储器价格不一样,本着性价比最优组合,由设计者决定,有些是可选的,有些是必须的,是手机方案决定的,我们了解只是各种存储性能,特点,在测试中判断错误原因。

        手机协议中的软件的白盒测试
        手机软件测试单从测试的内容来看,包括上面的MMI和底下的PROTOCOL。由于MMI的灵活性,和各个厂家的个性化,以及手机本身的用户不同,MMI的侧重点也就不同,在基本通话、短消息、数据功能完成的基础上可以五花八门,所以测试的重点不同。测试方法各不相同。但是协议就不同了,协议是统一的,虽然你实现方法可以不同,但是完成的功能必须相同,和MMI不同,虽然都是聊天,但是有些用短消息聊天,有些用PUSH聊天,而协议软件有一个遵守的规范——ETSI指定协议规范,有统一的命令规范和统一的标准。消息(术语,不是软件编程里的消息,是通信术语)是固定的嘛。 针对协议的测试,因为有标准可循,有规范可循,所以软件测试就有
很多工具,公司也多,自动化测试要自动话,否则,按照人的测试能力,谁也无法保证其绝对可靠性.


TAG:

 

评分:0

我来说两句

日历

« 2024-04-28  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 3805
  • 日志数: 6
  • 建立时间: 2012-06-28
  • 更新时间: 2013-06-09

RSS订阅

Open Toolbar