iOS系統(tǒng)及客戶端軟件測(cè)試的基礎(chǔ)介紹
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2012/2/24 10:38:17 ] 推薦標(biāo)簽:
1.整個(gè)系統(tǒng)介紹
iOS現(xiàn)在的新版本iOS5是10月12號(hào)推出,當(dāng)前版本是4.3.5
先是硬件部分,采用iOS系統(tǒng)的是iPad,iPhone,iTouch這三種設(shè)備,其中iPhone和iTouch的系統(tǒng)基本一致,iPad區(qū)別的地方主要是分辨率尺寸上的區(qū)分
接著軟件部分,是常說(shuō)的os部分,現(xiàn)在常見(jiàn)的系統(tǒng)是4.2.1/4.3.3/4.3.5/5.0.0/5.0.1,其中4.3.3以上的版本iPad版本支持手勢(shì),5.0.0以上版本支持通知欄和icloud,其中5.0.0和4.x相差較多,apple號(hào)稱的修改點(diǎn)有200多
第三對(duì)于各個(gè)app來(lái)說(shuō),每個(gè)app都有一些固定信息,app的id(區(qū)分app的標(biāo)識(shí)),顯示的名稱(包括app安裝后顯示名和在appstore上的顯示名),支持的iOS版本(低支持的os版本,一般是支持iOS4.0以上,但是對(duì)于不同的app因?yàn)閼?yīng)用到了不同的系統(tǒng)功能,故要求的iOS版本也會(huì)不同,以后要求iOS5.0版本的app也會(huì)多起來(lái)的)
2.安裝
1)官方的安裝方式
可以PC/MAC機(jī)上下載好,然后用itunes同步到機(jī)器上,或者直接在機(jī)器上到appstore上下載到本機(jī)然后下載,這是普通和官方的安裝方式,但是只能使用已經(jīng)在appstore上線的app,對(duì)于測(cè)試的版本基本無(wú)意義
2)越獄
越獄/破解,現(xiàn)在4.3.3版本有完美破解,以上的版本只有不完美破解,以后可能會(huì)有完美方式(注,不完美破解是不能重啟機(jī)器),越獄之后的機(jī)器可以不受限制的裝各種app到機(jī)器上,對(duì)于測(cè)試版本來(lái)說(shuō)比較方便
3)開(kāi)發(fā)機(jī)模式
開(kāi)發(fā)機(jī)模式是一個(gè)俗稱,正式名字其實(shí)我也不是很清楚,大家明白即可,一個(gè)apple的發(fā)布者賬戶,可以支持100臺(tái)設(shè)備,即可以生成100個(gè)不同SN串號(hào)的證書安裝到機(jī)器上,這樣發(fā)布者賬戶編譯出來(lái)的版本可以安裝到對(duì)應(yīng)的開(kāi)發(fā)機(jī)上,證書可以在設(shè)置通用描述文件中找到,當(dāng)然apple的發(fā)布者賬戶還有其他兩種類型:企業(yè)賬戶和學(xué)生用賬戶,這2個(gè)賬戶是不能將app發(fā)布到appstore的,這里不具體說(shuō)明了
4)OTA模式
OTA不是一個(gè)新鮮的東西,以前很多的手機(jī)軟件都是如此安裝,可以直接從機(jī)器上訪問(wèn)安裝地址安裝,為方便,前提是機(jī)器是破解的或者已安裝開(kāi)發(fā)者證書,移動(dòng)這邊現(xiàn)在基本上正在開(kāi)發(fā)的項(xiàng)目都是有這樣的安裝方式,簡(jiǎn)化安裝步驟
以上是一些不同的安裝方式,其他還有91助手/同步助手等第三方工具安裝,但是這些只是一些輔助方式區(qū)別,app能否安裝取決于apple賬戶有沒(méi)有購(gòu)買過(guò)此app和此機(jī)器上有沒(méi)有對(duì)應(yīng)apple賬戶登錄,購(gòu)買可以認(rèn)為是一種添加證書許可動(dòng)作,開(kāi)發(fā)者證書也是一種,而越獄則是繞過(guò)了證書驗(yàn)證
3.兼容性
1)硬件兼容性
三種設(shè)備中iPhone和iTouch設(shè)備基本一致,iPad因?yàn)榉直媛屎统叽缟喜煌,一般的客戶端都?huì)分開(kāi)開(kāi)發(fā),如果是全兼容的app,那么需要兼顧測(cè)試,而全兼容性的app需要多考慮的是怎樣在pad和phone的屏幕上設(shè)計(jì)一個(gè)兼顧型的展現(xiàn),不過(guò)這是交互和視覺(jué)設(shè)計(jì)師需要考慮的地方
回到分開(kāi)開(kāi)發(fā)的模式中,iPhone和iTouch可以認(rèn)為是同一種設(shè)備,差異很小,主要的差異也是在來(lái)電和短信中斷方面,另一個(gè)要注意的是iPad可以安裝只適用iPhone/iTouch的app,以兼容模式顯示,此時(shí)基本上可以認(rèn)為是在一個(gè)iTouch上運(yùn)行此app
同一類設(shè)備不同機(jī)型的兼容性,一共是iPhone有5代,iPad有2代,iTouch有4代,機(jī)器之間的差異對(duì)于app來(lái)說(shuō)主要是內(nèi)存和CPU的性能和打完包后的大小以及分辨率的適配,iPhone4和iTouch4及以上是用640*960分辨率,以下是低分辨率機(jī)器,4代之前之后的CPU用的不同,所以編譯版本時(shí)要兼容2種CPU,而iPad只有一種分辨率和一種CPU,所以不用考慮太多,同一個(gè)app的iPhone版本往往比iPad版本的安裝包文件要大,基本上是CPU和分辨率這2種原因
硬件兼容性來(lái)說(shuō),基本上iPhone的客戶端要測(cè)2個(gè)機(jī)器(3代和4代各一,iPhone和iTouch隨意),iPad客戶端沒(méi)有要求
2)系統(tǒng)兼容性
前面也說(shuō)了,常見(jiàn)的系統(tǒng)是4.2.1/4.3.3/4.3.5/5.0.0/5.0.1,有條件是盡量測(cè)試,但是因?yàn)閕OS版本只能往上升級(jí),要降級(jí)需要越獄和保存SHSH,所以一般盡量保證4.3.3/4.3.5或者5.0.0/5.0.1的版本,4.x和5.x的版本據(jù)apple列了200多點(diǎn),其中還有各種不確切的問(wèn)題,所以一定需要測(cè)試,4.2.1版本是因?yàn)閕Phone和iTouch2代只能升級(jí)到此os版本,用戶量很少,而iPad的用戶也只有早期且不升級(jí)的才有此os,國(guó)內(nèi)用戶量很少
按照apple的以往做法,支持低版本的iOS的app,都可以在高版本上正常運(yùn)行,系統(tǒng)級(jí)別上向下兼容,但是也有不少例外,特別是一些自定義的控件,直接使用系統(tǒng)提供的控件一般不會(huì)有問(wèn)題
系統(tǒng)方面的兼容性除了要保證功能正確以外,還要考慮一些新os上才支持的功能,在老os上的表現(xiàn),而apple現(xiàn)在還在不停的更新os,故要提前保證新的beta版本os的兼容狀況
3)其他軟件兼容性
其實(shí)也沒(méi)有什么其他軟件,iOS系統(tǒng)中允許app調(diào)用的也只有通訊錄照片瀏覽器等系統(tǒng)自帶的軟件,也有內(nèi)嵌和重新打開(kāi)界面這2種狀態(tài),而重開(kāi)界面時(shí)系統(tǒng)會(huì)將當(dāng)前軟件保留,所以一般不會(huì)有界面方面的問(wèn)題
4.用戶體驗(yàn)
功能方面因?yàn)楦鱾(gè)app都是不同的,所以不展開(kāi)了,簡(jiǎn)單的介紹下一些用戶體驗(yàn)需要注意的地方:
滑動(dòng)拖動(dòng)翻頁(yè)等動(dòng)畫效果
各個(gè)頁(yè)面的旋轉(zhuǎn)屏幕,特別是iPad的客戶端
多點(diǎn)觸摸手勢(shì),各種手勢(shì)定義下的效果展示,以及iOS中盡量不要出現(xiàn)長(zhǎng)按菜單的功能,這是android上的默認(rèn)效果,iOS上長(zhǎng)按大多是進(jìn)入一個(gè)特別的狀態(tài)
按鈕意義要明顯,如果使用了過(guò)多的文字說(shuō)明,不是個(gè)好主意
5.性能
前文有介紹各種機(jī)器,因?yàn)樾聶C(jī)器的性能往往是好的,所以我的觀點(diǎn)是測(cè)試用差點(diǎn)的機(jī)器吧 =.=
iOS的內(nèi)存管理是優(yōu)先保證當(dāng)前,有多少用多少,超過(guò)上限不夠用直接關(guān)閉app,也是常說(shuō)的crash,自動(dòng)退出,所以內(nèi)存回收方面需要注意,也可以在開(kāi)發(fā)機(jī)上直接監(jiān)控內(nèi)存使用量,不過(guò)內(nèi)存監(jiān)控只能看到整個(gè)app的使用量,看不到具體模塊的使用,而os4.0以上每個(gè)關(guān)掉的app系統(tǒng)會(huì)自動(dòng)保存一個(gè)小鏡像,當(dāng)內(nèi)存不夠用的時(shí)候會(huì)連此鏡像都關(guān)閉,這是有時(shí)候開(kāi)啟app能看到關(guān)閉前的界面有些只能看到loading頁(yè)面的原因,特別是游戲類的app會(huì)有這樣的現(xiàn)象,另外,越獄的機(jī)器的可用內(nèi)存會(huì)大約小不少
CPU部分簡(jiǎn)單了,iOS的機(jī)制保證了CPU占用量很高的情況很少出現(xiàn),一般多數(shù)據(jù)多線程時(shí)會(huì)有卡和停頓的狀況是CPU不夠用了,這也只能靠設(shè)計(jì)上來(lái)避免了
網(wǎng)絡(luò)部分,主要是2g/3g/wifi的速度,但是這個(gè)性能指標(biāo)要根據(jù)不同的情況來(lái)考慮,一般來(lái)說(shuō)對(duì)比同類app的效果即可
6.webapp
現(xiàn)在杭研有不少webapp類的項(xiàng)目在進(jìn)行,因?yàn)槲抑皇呛?jiǎn)單的看了下,隨便說(shuō)下我的理解,大家有問(wèn)題盡管提
webapp的優(yōu)點(diǎn)是開(kāi)發(fā)迅速和維護(hù)簡(jiǎn)單,大部分功能是用html5來(lái)完成的,所以客戶端的開(kāi)發(fā)工作比較少,而且大部分功能的維護(hù)修改也只要在前端修改html代碼即可,不用升級(jí)客戶端版本,可以節(jié)約很多不同客戶端兼容覆蓋安裝等工作
缺點(diǎn)也比較明顯,功能上還是做不到和客戶端一樣的效果,使用時(shí)需要較多的網(wǎng)絡(luò)流量,需要有不少工作需要前端來(lái)完成
個(gè)人覺(jué)得比較類似flash網(wǎng)頁(yè)游戲和客戶端類游戲的樣子,facebook據(jù)說(shuō)客戶端都是采用此類方式開(kāi)發(fā),他們有一個(gè)強(qiáng)大的mobile web庫(kù),對(duì)于測(cè)試來(lái)說(shuō),即使是webapp,依然要向客戶端類的體驗(yàn)靠攏
PS 很早開(kāi)始寫,結(jié)果這樣那樣的原因才完成...
PS2 iOS近也在更新,特別是5.0新上線,更新的東西肯定會(huì)比較多,并且也在不停的吸收一些設(shè)計(jì)和功能,需要跟進(jìn)腳步
PS3 基本上簡(jiǎn)單的寫了一些基礎(chǔ)方面的東西,來(lái)源是早給幾個(gè)同事簡(jiǎn)單講解ios的介紹,因?yàn)楫?dāng)時(shí)也沒(méi)準(zhǔn)備什么,所以可能還是寫成文章清楚點(diǎn)
PSP 有啥問(wèn)題歡迎popo評(píng)論等各種方式交流
XBOX 歡迎大家使用iOS設(shè)備,好能越獄,能幫我們做內(nèi)測(cè)好了,設(shè)備實(shí)在是很少啊
相關(guān)推薦

最新發(fā)布
性能測(cè)試之測(cè)試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測(cè)試是從什么時(shí)候開(kāi)始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動(dòng)化測(cè)試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項(xiàng)目適合做自動(dòng)化?自動(dòng)化測(cè)試人員應(yīng)具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測(cè)試工具測(cè)評(píng)
2020/7/17 8:52:11RPA機(jī)器人能夠快速響應(yīng)企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測(cè)試基本概念是怎么來(lái)的?軟件測(cè)試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10