百科解釋
手機測試是一個很大的題目,涉及到硬件測試和軟件測試,還有結(jié)構(gòu)的測試,比如抗壓,抗摔,抗疲勞,抗低溫高溫等,結(jié)構(gòu)上的設(shè)計不合理,會造成應(yīng)力集中,使得本身外殼變形,對于翻蓋手機,蓋子失效,還有其他嚴重問題。硬件測試一般都有嚴格的物理電氣指標,也有專門的 儀器,這里的儀器,不在多說,一般如果是專業(yè)的測試人員,不會對詞陌生吧。
手機測試,一般是指軟件測試,這個一方面也說明了軟件在手機上的重要行。一方面也說明手機測試的難度。因為期他得測試都有明確的指標,嚴格的操作規(guī)程,還有各種儀器。下面說的手機測試一般都是手機軟件測試,以后不在重復(fù)說明。
在說明手機測試之前,我覺得應(yīng)該了解一下什么是嵌入式操作系統(tǒng),這是個時髦的名詞,雖然我們已經(jīng)被嵌入式操作系統(tǒng)的產(chǎn)品所包圍,但是卻不一定能說清楚,什么是嵌操作系統(tǒng),而學(xué)校的課堂上,講的也不多,所以很多人對此感到云山舞罩。
簡單的說,一個嵌入式操作系統(tǒng)就是為完成某種特定功能而專門開發(fā)的操作系統(tǒng)。這個操作系統(tǒng)的功能很明確,不象大型操作系統(tǒng),范圍廣泛,大千世界,盡在其中,而嵌操作系統(tǒng)只為完成某一項或者幾項功能。
手機的特殊性要求對響應(yīng)時間達到一定限制范圍。也就是所謂的實時操作系統(tǒng),如果一個電話不能在90秒內(nèi)接聽,那么對方會掛掉。而你的操作系統(tǒng)還沒反映過來,那么這個操作系統(tǒng)無疑是失敗的,這是對嵌入式操作系統(tǒng)實時性的要求。
作為一個測試人員,你必須了解這些,可能對一些軟件開發(fā)人員,他不必很在意這些方面,因為他只要了解自己模塊的入口說明和出口說明就可以。但是測試人員不行。高級測試人員應(yīng)該了解嵌入操作系統(tǒng)的特點,這個系統(tǒng)不象WINDOWS,有圖形界面可以輸入輸出,也不象DOS用命令行模式,所有這些,都需要自己編寫一個編輯器,編寫一個交互界面,編寫一個輸入輸出界面,在WINDOWS中,利用一些API和一些MFC,不用考慮硬件的問題,因為系統(tǒng)已經(jīng)完成,而WINDOWS是講究和硬件分離的,因為這樣可以保護系統(tǒng)不受侵入。而在嵌入式系統(tǒng)里面。這一些都要求和硬件息戲相關(guān)。手機測試中,軟件出現(xiàn)的故障不一定是由于軟件的錯誤,也可能是由于沒有考慮到硬件和軟件沒有完美的結(jié)合。
因此我們在了解操作系統(tǒng)同時,也要了解一下其他的手機硬件性能,比如CPU ,比如存儲器。
CPU的處理運算能力是以MIPS來衡量的,當(dāng)然越快越好,但是也是和成本相關(guān)的,我不知道現(xiàn)在MOTOROLA T39的CPU,但是,因為是PDA,又是手寫屏幕,所以菜單特別的慢。關(guān)于存儲器需要專門做出說明,因為這里 的存儲器很特別,不象PC,手機沒有硬盤!
嵌入式系統(tǒng)的編程語言一般有C,而且也是最多的,也有其他語言。比如C++在最開始時候是用匯編的,但是匯編難懂,而且也不容易移植,漸漸的被C代替,不過即使如此,在啟動程序時候,要啟動板子,也就是電路板時候,還是需要用一些匯編語言完成。
作為一個嵌入式系統(tǒng)的程序,和在PC上運行著的程序沒有任何不同,唯一不同可能是在PC上運行的程序,你可以看到結(jié)果——如果你用輸出語句的話,而在這里,你是看不到結(jié)果的。除非你加上LCD硬件,然后編寫了LCD驅(qū)動程序,然后再編寫顯示程序。編寫嵌入式程序,一切都要自己解決。
我們的手機如果不是認為把電源切斷的話,或者在電源消耗到一定程度的話,是會一直在使用的,所以,手機程序是一直在運轉(zhuǎn)的,就是說一直在循環(huán),這個,對于了解嵌入式程序,應(yīng)該是個好材料——嵌入式程序就是一個無限循環(huán)的程序,除非關(guān)掉電源和電源因素,這里也有一個測試點:硬件中斷是最高級的,它會終止你的程序,即使你現(xiàn)在的程序級別很高,比如通話,如果沒電了,一切會over.
手機程序就是在一個無限循環(huán)的程序,什么時候跳出這個無限循環(huán)?你關(guān)機吧,如果感到不高興,把電池卸下來,因為有可能進入死循環(huán),而關(guān)機鍵失效了,——只好通過取下電池了。
這里要專門說明一下存儲器,因為很多手機毛病都和存儲有關(guān),而且很多問題都和存儲相關(guān),計算機的存儲是關(guān)鍵,而手機的更是關(guān)鍵,因為計算機有硬盤作為存儲,而手機所有的都在存儲器里。存儲器分為幾類,RAM 隨機存儲器,ROM隨機只讀存儲器還有現(xiàn)在出現(xiàn)一些的閃存,以及電子可編程存儲和非易失存儲起。一個一個到來 。RAM 隨機存儲器,其中又有SRAM(靜態(tài)RAM)DRAM(動態(tài)RAM),
SRAM,只要只要電源開著,就會保存,我們打電話,有些最后撥打的號碼,暫時是存在SRAM中的,不會立刻寫入通話記錄。只有正常關(guān)機,才會寫入,如果取電池的話,是不會寫入手機的通話記錄的,如果在通話記錄中出現(xiàn)了已經(jīng)撥打電話,但是沒有記錄的情況,那么有可能和這個存儲器有關(guān),可能是你的軟件上錯誤,也可能是硬件。DRAM在手機上用的不多,因為保留數(shù)據(jù)時間很短。從價格上看,SRAM是非常昂貴的,而DRAM相比很便宜。
ROM也有幾種,PROM可編程ROM 和EPROM可擦除可編程ROM。兩者區(qū)別是,PROM是一次性的,也就是軟件灌入后,這個就完蛋了,這種是早期的產(chǎn)品,現(xiàn)在已經(jīng)不可能使用了,而E PROM則是通用的存儲器,這些存儲器不符和手機軟件產(chǎn)品,一般使用ROM少。
其他FLASH。這是近來手機采用最多的存儲器,這種存儲起結(jié)合了ROM和RAM的長處,但是不屬RAM也不屬于ROM。手機大量采用的NVRAM非易失存儲器。和SRAM屬性差不多,EEPROM 電子可擦出可編程存儲器。閃存,ROM的后代。手機軟件一般放在EEPROM中,EPROM是通過紫外光的照射,擦除原先的程序,而EEPROM是通過電子擦出,當(dāng)然價格也是很高的,而且寫入時間很長,寫入很慢,所以前面提到的電話號碼,一般先放在S RAM中,不是馬上寫入EEPROM,因為當(dāng)時有很重要工作要做——通話,如果寫入,漫長的等待是讓用戶忍無可忍的。 NVRAM 是一個很特別的存儲器,它和SRAM相類似,但是價格卻高很多,由于一些數(shù)據(jù)實在重要,斷電后必須保持這些數(shù)據(jù),所以只能存放在這里,一般和個人信息有關(guān)的數(shù)據(jù)會放在這里,比如和S IM卡相關(guān)數(shù)據(jù)。容量大小也只有幾百字節(jié)。
3G手機離市民越來越近了!從昨天(6日)起,按照3G國產(chǎn)標準TD-SCDMA制式生產(chǎn)的3G手機開始在青島、保定、廈門和北京四地放號測試,測試手機號碼以“188”開頭。本月15日前后,國產(chǎn)3G手機也將在上海小范圍放號,進行為期兩個月左右的測試。
上述五個城市的測試結(jié)果,將決定我國3G市場的進程,中國的3G到底用什么標準、3G手機什么時候大規(guī)模商用和3G網(wǎng)絡(luò)究竟由誰來運營,最快都將在明年揭開謎底。
閃寸存儲器是所有手機的首選,綜合了前面的所有優(yōu)點,不會斷電丟失數(shù)據(jù)(NVRAM)快速讀取,電子可擦出可編程(EEPROM)所以現(xiàn)在手機大量采用。
說了這么多存儲器,可能比較糊涂了,這么多存儲器,究竟中采用哪種呢,在手機發(fā)展中,各種存儲器都用過,至于現(xiàn)在,各種手機采用的存儲器是不同的,這個和成本相關(guān),各種存儲器價格不一樣,本著性價比最優(yōu)組合,由設(shè)計者決定,有些是可選的,有些是必須的,是手機方案決定的,我們了解只是各種存儲性能,特點,在測試中判斷錯誤原因。
------------------------------------------
手機協(xié)議站軟件的白盒測試
手機軟件測試單從測試的內(nèi)容來看,包括上面的MMI和底下的PROTOCOL。由于MMI的靈活性,和各個廠家的個性化,以及手機本身的用戶不同。MMI 的側(cè)重點也就不同,在基本通話、短消息、數(shù)據(jù)功能完成的基礎(chǔ)上可以五花八門,所以測試的重點不同。測試方法各不相同。但是協(xié)議就不同了,協(xié)議是統(tǒng)一的,雖然你實現(xiàn)方法可以不同,但是完成的功能必須相同,和MMI不同,雖然都是聊天,但是有些用短消息聊天,有些用PUSH聊天,而協(xié)議軟件有一個遵守的規(guī)范——ETSI指定的協(xié)議規(guī)范,有統(tǒng)一的命令規(guī)范和統(tǒng)一的標準。消息(術(shù)語,不是軟件編程里的消息,是通信術(shù)語)是固定的嘛。針對協(xié)議的測試,因為有標準可循,有規(guī)范可儀,所以軟件測試就很多工具,公司也多,自動化測試要自動話,否則,按照人的測試能力,誰也無法保證其絕對可靠性,也沒有這么大的人力去仔細做測試。
一般對于白盒測試是比較嚴格的,而且也是耗費人力的,所以常采用自動化測試工具。這樣節(jié)省人力、縮短測試時間。至于誰家的工具比較好,涉及各取所需吧,也涉及到成本問題。你如果想購買某產(chǎn)品,會給你一個DEMO版本,給你一個月的評價時期,這個評估版本讓你熟悉其產(chǎn)品的優(yōu)劣也讓你熟悉其操作。測試工具一般都有二次開發(fā)功能,也就是可以自己編寫腳本,針對不同的軟件平臺做一些改動,這樣可以根據(jù)自己的需要編寫測試CASE測試用列。當(dāng)然即使是全部用自動化測試,你心理還是沒底,你還是要仔細去看代碼。分析流程,讀懂其含義,一個很小的問題,出錯保護沒有作好,一般這個問題最多,出錯保護機制沒有作好,會造成崩潰這樣嚴重的問題。 這是針對協(xié)議代碼的白盒測試。如果你是對購買來的協(xié)議進行測試,一般有儀器,模擬一個網(wǎng)絡(luò)基站,進行測試,不過這樣的儀器非常昂貴,而且測試人員要對ETSI協(xié)議比較熟悉。我沒有直接參加針對協(xié)議的白盒測試,不過對評估般的測試軟件曾經(jīng)PRACTISE,可測試覆蓋率,我很奇怪的是,一般打點(跟蹤)也是需要消耗CPU時間的這樣程序效率就降低了,而我要測試程序的效率等項目就要考慮CPU,而且程序的工作運轉(zhuǎn)必須和CPU息息相關(guān),而現(xiàn)在CPU 在保證程序RUN同時,還要進行打點,是否測試出的指數(shù)和實際不符和呢,是否沒有達到真實的水平呢?而它這個產(chǎn)品(水牛)介紹說,一般不占用CPU時間,我想了很長時間沒有想通后想咨詢,告之這是他們的專利,無可奉告。由于這種測試工具是針對平臺,所以如果你平臺不支持的,也就沒有辦法使用了。還有集成測試等等,在軟件的介紹中有詳細說明,不再詳細說明。 對協(xié)議進行白合測試,我想對你的要求就是:熟悉相關(guān)的協(xié)議,否則白扯;熟悉開發(fā)的語言,否則免談。
手機測試主要測試什么?
一.軟件壓力測試:用自動測試軟件連續(xù)給手機撥打1000個電話,檢查手機是否會發(fā)生故障.
二.抗摔性測試:抗摔性測試由專門的PRT可*性實驗來進行.半米的微跌落測試要做300/面(手機有6個面).而2米的跌落測試每個面需各做一次.還有模擬人把手機扔到桌面的測試.
三.高溫低溫測試:讓手機處于高低不同的溫度來檢測手機的適應(yīng)性.
四.高濕度測試:用一個專門的箱子來操作滴水測試,模擬人出汗的情況(水里面摻有一定比例的鹽)
五.百格測試:用H4的鉛筆在手機的外殼畫100個格子,看看外殼會不會掉油漆.
六.翻蓋測試:對翻蓋手機進行翻蓋10萬次,檢查殼體的損耗情況.
七.扭矩測試:直板機,用夾具夾住兩頭,一頭左擰,一頭右擰.測試殼體和手機里面大型器件的強度.
八.靜電測試:北方天氣干燥,手摸金屬的東西容易產(chǎn)生靜電,擊穿手機電路,有些設(shè)計不好的手機就是這么突然壞的.有專門的靜電槍和銅板來測試.
九.按鍵測試:借助機器以給定的力量擊打鍵盤10萬次.十.沙塵測試:手機放入特定的箱子,細小的沙子被鼓吹起來.數(shù)小時后,察看手機里面是否有沙子進入,如果是,那么手機密閉性不好,結(jié)構(gòu)設(shè)計有待重新調(diào)整.