|
手机软件测试是一个很大的题目,涉及到硬件测试和软件测试,还有结构的测试,比如抗压,抗摔,抗疲劳,抗低温高温等,结构上的设计不合理,会造成应力集中,使得本身外壳变形,对于翻盖手机,盖子失效,还有其他严重问题。硬件测试一般都有严格的物理电气指标,也有专门的仪器,这里的仪器,不再多说。但是手机软件测试,一般是指软件测试,这一方面说明了软件在手机上的重要性,另一方面也说明了手机软件测试的难度。
在说明手机软件测试之前,应该了解一下什么是嵌入式操作系统,这是个时髦的名词,虽然我们已经被嵌入式操作系统的产品所包围,但是却不一定能说清楚什么是嵌入式操作系统,而学校的课堂上讲的也不多,所以很多人对此感到云山雾罩。
简单的说,一个嵌入式操作系统就是为了完成某种特定功能而专门开发的操作系统。这种操作系统的功能很明确,它不像大型操作系统,范围广泛,大千世界,尽在其中,嵌入式操作系统只是设计为完成某一项或者几项功能。由于手机对响应时间是有严格要求,也就是要求所谓的实时操作系统。如果一个电话不能在90秒内接听,对方挂掉了电话而你的操作系统还没反映过来,那这个操作系统无疑是失败的,这是对嵌入式操作系统实时性的要求。
作为一个测试人员,你必须了解这些,可能对一些软件开发人员,他不必很在意这些方面,因为他只要了解自己模块的入口说明和出口说明就可以。但是测试人员不行,高级测试人员应该了解嵌入式操作系统的特点,这个系统不象windows有图形界面可以输入输出,也不像DOS用命令行模式,所有这些功能,都需要自己编写一个编辑器,编写一个交互界面,编写一个输入输出界面。在windowS中,可以调用一些AP和MFC,不用考虑硬件的问题,因为系统已经完成;而在嵌入式操作系统里面,这一切要求的实现都和硬件息息相关。最后,请先记住Symban这个名字。
手机软件测试中,软件出现故障不一定是由于软件的错误,也可能是因为没有考虑到硬件和软件的结合。因此我们在了解操作系统的同时,也要了解一下手机的硬件特点,比如CPU和存储器。 CPU的处理运算能力是以MPS来衡量的,当然越快越好,但也是和成本相关的。关于存储器需要专门做出说明,因为手机的存储器很特别,不象PC,手机可是没有硬盘的。作为一个新手,可能对嵌入式操作系统有了一个大致的了解,下面我们再来看看手机上的程序又是如何的,难道是和以前的程序不一样?
其实,嵌入式系统的编程语言一般都用C,而且也是最多的,当然也有其他语言,比如C++。在最开始时候是用汇编的,但是汇编难懂,而且也不容易移植,渐渐地被C所取代,不过即使如此,如果要启动板子,也就是电路板的时候,还是需要用一些汇编语言完成。作为一个嵌入式系统的程序,和在PC上运行着的程序没有任何不同,唯一的不同可能是在PC上运行的程序,你可以看到结果——如果你用输出语句的话,而在这里,你是看不到输出结果的。除非你加上LCD硬件,编写了LCD驱动程序,然后再编写显示程序。编写嵌入式程序,一切都要自己解决。
手机如果不是人为切断电源或者没电的话,是会一直使用的,所以,手机程序是一直在运行的,就是说一直在循环,这个对于了解嵌入式程序应该是个好的角度——嵌入式程序就是一个无限循环的程序,除非关掉电源,这里也有一个测试点:硬件中断是最高级的,它会终止你的程序,即使你现在的程序级别很高,比如通话,如果没电了,一切都会over. 手机程序就是一个无限循环的程序,什么时候跳出这个无限循环?你关机吧,如果感到不高兴,把电池卸下来,因为有可能进入死循环,而关机键失效了,这时只好取下电池了。
相关链接:软件测试 |