第一篇:軟件測試工程師手機(jī)軟件測試流程
手機(jī)軟件測試流程
我只知道手機(jī)軟件測試包括:
基本功能設(shè)置(本機(jī)設(shè)置)測試;對于整個菜單結(jié)構(gòu)進(jìn)行逐一檢測,驗(yàn)證在整個菜單中是否所有的功能都已經(jīng)實(shí)現(xiàn),以及在操作過程中是否有異常狀況出現(xiàn);
容錯性測試,輸入手機(jī)允許范圍之外的數(shù)據(jù)進(jìn)行測試,檢測反應(yīng)狀況;
邊界測試,輸入手機(jī)允許條件的邊界進(jìn)行測試,檢測是否有異?,F(xiàn)象出現(xiàn);
異常中斷測試,在進(jìn)行相關(guān)操作的同時,有其它事件發(fā)生,查看終端有什么現(xiàn)象產(chǎn)生;
回歸測試
易用性測試
兼容性測試
通話測試(強(qiáng)信號、弱信號以及強(qiáng)信號&弱信號之間切換測試);
第二篇:手機(jī)軟件測試
手機(jī)軟件測試同軟件測試一樣,只不過他的平臺式手機(jī),也是嵌入式的一部分!工作就是測試軟件可以在手機(jī)上正常使用,不會產(chǎn)生各種異常情況!測試方法也比較多……
首先測試一般是把流程走通,這是最基本的,你的軟件需要實(shí)現(xiàn)什么功能和實(shí)現(xiàn)了什么功能,嚴(yán)格按照需求,即使是可用的功能,需求沒有的話,那也是Bug。
軟件的可用性和體驗(yàn)性
交互性:這一塊的Bug應(yīng)該是最多,舉一個簡單的例子,使用軟件的過程中來短信和來電,如果你的軟件是基于網(wǎng)絡(luò)的,這一塊肯定會有很多問題。而且,手動的將網(wǎng)絡(luò)斷開再恢復(fù),請求會不會重新發(fā)送,這一點(diǎn)也是需要考慮的。
將軟件中的控件和手機(jī)的按鍵結(jié)合起來測試。
還有你要明確軟件的平臺,兼容性需要考慮,如果是一個平臺的,但是分辨率不一樣,會使得界面元素丟失等,如果是鍵盤和觸屏,那又要分情況考慮了。
找Bug就是要把軟件玩死,就要充分考慮異常的操作,測試不是找開發(fā)的錯誤,而是想開發(fā)沒想到的東西,場景是否面面俱到,錯誤處理是否健全。
第三篇:手機(jī)軟件測試經(jīng)驗(yàn)總結(jié)
手機(jī)軟件測試總結(jié)
沙晶晶
一個合格的手機(jī)軟件測試工程師要掌握的東西是很多很多的。在我個人理解中,一個合格的高級手機(jī)軟件測試工程師應(yīng)該具有最基本的兩點(diǎn)知識:軟件測試?yán)碚撝R和一定的開發(fā)技能。
1.軟件測試?yán)碚撝R
這個不用多說,軟件測試工程師必須要掌握的,軟件測試如何融入整個開發(fā)的流程,什么時候介入,什么時候結(jié)束,如何搭建測試環(huán)境,如何設(shè)計(jì)測試用例(包括設(shè)計(jì)測試用例的方法,如:等價(jià)類劃分,邊界值法等),如何使用測試工具,還有測試領(lǐng)域?qū)S玫囊恍┬g(shù)語等等。
2.開發(fā)技能
合格的高級軟件測試工程師,編程技能不可缺少。在手機(jī)測試中,比如自動化測試,完全可以開發(fā)工具來實(shí)現(xiàn)自動化測試。所以掌握一門扎實(shí)的編程語言,C或者C++還是非常重要的,能夠自己開發(fā)測試工具,也是一個高級手機(jī)軟件測試工程師應(yīng)該具備的素質(zhì)。我認(rèn)為我們不應(yīng)該只是單純的發(fā)現(xiàn)bug,而應(yīng)該從更深層次的去探究這個 bug的原因,甚至可以定位bug。
另外從技能上講,面向不同的技術(shù)方向,像操作系統(tǒng)、網(wǎng)絡(luò)、通信等都要從專業(yè)上深入了解。這些是除去工作時間外必須去加強(qiáng)充電的部分。有這些做后盾,做起事來也會事半功倍。
另外手機(jī)測試中應(yīng)該注意的問題
首先是正確性測試,正確性測試又可稱為功能性測試,我們首先就是要測試所有功能是否都已實(shí)現(xiàn)、正確、是否滿足需求規(guī)格說明。
正確性測試還要考慮到用戶界面,軟件產(chǎn)品始終是關(guān)注軟件使用者——客戶的體驗(yàn),手機(jī)屏幕小,界面有限,所以手機(jī)軟件的用戶界面更需有一定的規(guī)范和標(biāo)準(zhǔn):正確性、一致性、直觀性、實(shí)用性、靈活性、舒適性便是最基本的標(biāo)準(zhǔn)。
正確性一般比較明顯,比較容易發(fā)現(xiàn),例如某個窗口沒有被完全顯示,文字沒有對齊,文字拼寫錯誤,密碼輸入時沒有以*的形式自動屏蔽等。
一致性包括軟件自身的一致性以及手機(jī)操作系統(tǒng)或與其它軟件的一致性,具體表現(xiàn)在使用的術(shù)語,字體是否一致,界面的各參數(shù)風(fēng)格是否前后一致等。特別也要注意中英文版本下界面風(fēng)格是否一致,是否有中英文混合的情況。
直觀性要求軟件功能特性易懂、清晰,用戶界面布局合理,對操作的響應(yīng)是否在用戶的預(yù)期中,如用戶做了非法操作后,界面是否有錯誤的提示信息,提示信息是否完整,是否明確,是否能讓用戶立即明白問題所在。
實(shí)用性不是指軟件本身是否實(shí)用,而僅僅是指具體的某個特性是否實(shí)用,是否有助于用戶執(zhí)行該軟件的功能,手機(jī)軟件是安裝在手機(jī)上的第三方軟件,手機(jī)不同于PC機(jī),功能沒有PC機(jī)強(qiáng)大,在手機(jī)上實(shí)現(xiàn)的功能也不同于在PC機(jī)上的功能,所以功能不應(yīng)復(fù)雜,無用的功能只會增加程序的復(fù)雜度,產(chǎn)生不必要的軟件缺陷。但是個人覺得有些必要的功能還是一定要有的,如:隨時可以退出應(yīng)用程序這個功能還是很必要的,用戶進(jìn)入多層之后,若想退出應(yīng)用程序,但是又要一層一層返回到最上一層才能退出時,也是一件很煩很頭疼的事。
靈活性,按我個人現(xiàn)在的理解,具體表現(xiàn)在,如果多種狀態(tài)之間的切換,例如界面的不停切換,操作步驟的復(fù)雜,增加了編程的難度,可能也會降低軟件的可靠性,這時軟件的靈活性將會大打折扣。特別是在我們測試觸屏手機(jī)的時候,界面的切換經(jīng)常會導(dǎo)致一些界面卡住,亂碼,黑屏,死機(jī)的情況,所以我們在測帶有觸屏手機(jī)時,一定要注意到靈活性。
舒適性主要強(qiáng)調(diào)界面美觀,色彩運(yùn)用恰當(dāng),按鈕的立體感以及增加動感動畫等。例如顏色的搭配,有些背景色跟文字或圖片的顏色搭配在模擬器可以較清晰的顯示出來,但是到了手機(jī)由于其分辨率問題就不那么明顯了。顏色搭配要以清晰美觀為基礎(chǔ),還要適當(dāng)考慮用戶心理等問題。
除了測試軟件的正確功能,及其更需要考慮一些異常的情況,異常的情況也分多種考慮,如下:
1、容錯性測試
容錯性測試是一種對抗性的測試過程。在這種測試中,把應(yīng)用程序或系統(tǒng)置于異常條件下,例如輸入特殊字符或異常字符,具體可以通過輸入超過邊界值的字符(這也相當(dāng)于用例設(shè)計(jì)方法中的邊界值分析法)看后臺有沒有相應(yīng)的容錯處理。手機(jī)客戶端界面會給出什么樣的提示信息。另外還要測試多個客戶端同時發(fā)出請求,測試后臺的多線程處理能力,看能同時處理多少用戶的同時請求,平均響應(yīng)時間是多少,是否在可接受范圍內(nèi)。
2、測試應(yīng)用程序中的一個功能正在執(zhí)行過程中,同時另外一個事件或操作對該過程進(jìn)行干擾。
例如:運(yùn)用程序運(yùn)行時,切換程序到外部,做一些與運(yùn)用程序相關(guān)的操作,再切換到應(yīng)用程序中,查看剛剛的操作是否對正在執(zhí)行的運(yùn)用程序有影響。另外來電,短信,電量不足等一些事件警告的出現(xiàn)也有可能導(dǎo)致程序出錯,也要作出相應(yīng)的處理。有些網(wǎng)絡(luò)程序由于設(shè)置了數(shù)據(jù)通訊時不處理來電,這時候最好能在低電量情況下測試,看是否做了恰當(dāng)?shù)奶幚?。我們需要測試一下這些干擾的沖突事件會不會導(dǎo)致應(yīng)用程序core,手機(jī)死機(jī)、花屏等嚴(yán)重的問題出現(xiàn)。
3、我們一定要考慮到對手機(jī)存儲空間滿后的壓力測試。
手機(jī)的內(nèi)存空間資源是有限,不像PC機(jī)有著巨大的存儲空間,我們很容易做到手機(jī)存儲空間已滿,所以我們一定要考慮剩余空間不足或存儲空間為零的情況下,應(yīng)用軟件的運(yùn)行是否正常?我們要在手機(jī)沒有存儲空間或達(dá)到最大的承載極限時,對手機(jī)軟件可編輯修改的模塊進(jìn)行編輯修改,保存之后,并對手機(jī)軟件進(jìn)行任何操作測試,如果程序員不做相應(yīng)的處理或者處理不好的話,很容易造成配置文件讀寫錯誤或無法寫入,從而導(dǎo)致手機(jī)軟件系統(tǒng)出現(xiàn)core掉或者手機(jī)出現(xiàn)死機(jī)、無法退出的情況。雖然手機(jī)本身在磁盤空間已滿的情況下也會出現(xiàn)不少問題,我們的應(yīng)用程序也無法避免,但是我們一定要確保我們的程序不會出現(xiàn)core,程序無法退出,手機(jī)死機(jī)等這些嚴(yán)重情況出現(xiàn)。
4、極限發(fā)散性測試
我個人經(jīng)常喜歡說成是暴力測試或壓力測試,我的做法是通過各種操作步驟或途徑、異?;蚍欠▓?zhí)行,站在不正常的用戶角度,如快速按按鈕或快速劃屏、對某個功能做大量的重復(fù)性的操作等(如在登錄過程中,不停的做登錄和取消操作,不停地按幾十下幾百下),不把程序搞崩潰誓不罷休的暴力發(fā)散性測試,往往開發(fā)會狡辯與理論這是不正常的變態(tài)的測試,如果用戶做此操作出現(xiàn)了問題由用戶自己負(fù)責(zé),確實(shí)世界上沒有十全十美的東西,任何東西都會有瑕疵,軟件也不例外,不可能做到零缺陷,我們不求做到最好,我們只求做到更好,試想用戶的操作是多種多樣的,誰能確保用戶不會做到那些異常的非法的操作,我們不僅要確保正常功能實(shí)現(xiàn)的準(zhǔn)確無誤,一定還要做到異常非法的功能也要處理的準(zhǔn)確無誤,那樣才能降低軟件的缺陷率。通過我多次實(shí)踐,發(fā)現(xiàn)不少嚴(yán)重致命的bug往往是由此操作導(dǎo)致,個人認(rèn)為這與開發(fā)人員在異常情況下考慮不充分有一定的關(guān)系。
5、邊界值測試
程序員會容易漏掉對邊界值的處理,通過我多個版本的測試經(jīng)歷發(fā)現(xiàn),每個版本都會出現(xiàn)這種邊界值數(shù)組越界導(dǎo)致程序core掉的致命bug,曾經(jīng)測試過手機(jī)界面顯示N個縮略圖片的功能,顯示幾百張圖片功能無誤,但是超過某個數(shù)字即幾千張之后,應(yīng)用程序會立即出現(xiàn)一些致命的錯誤;同時在刪除列表界面的第一個或者末尾一個圖片時,也出現(xiàn)了嚴(yán)重問題。所以我們不僅僅只考慮到能編輯的文本框下邊界值的測試,還要考慮到其他一切盡可能輸入的情況。
6、性能測試
我們不僅要測試軟件功能的正確性,還要測試軟件的性能,軟件的運(yùn)行速度,是否有延時,軟件的運(yùn)行時間,長期的運(yùn)行是否會增加對存儲空間的額外占用情況等。在軟件運(yùn)行時,要懂得不定時的查看資源的利用率,查看cpu的占用情況,內(nèi)存泄露會造成程序隨機(jī)的莫名其妙core、卡屏、手機(jī)死機(jī)的情況,而往往由內(nèi)存泄露導(dǎo)致的問題,重啟手機(jī)之后,問題不容易重現(xiàn),并且再次內(nèi)存泄露時,出現(xiàn)的現(xiàn)象也會不同,對我們測試重現(xiàn)問題來說是一個比較頭疼的事,所以不定時的查看內(nèi)存情況,查看內(nèi)存是否泄露,出現(xiàn)的不易重現(xiàn)的嚴(yán)重問題是否與內(nèi)存泄露有關(guān),其實(shí)也是一種定位問題的方法。
7、數(shù)據(jù)請求或傳輸?shù)刃钑r較多的過程要確保有提示界面,最好有動畫顯示數(shù)據(jù)在傳輸過程中,請用戶耐心等待。另外要注意在這個過程中對重復(fù)按鍵予以忽略,因?yàn)榈却龝r間過長或響應(yīng)遲鈍時,用戶趨向于重復(fù)按手機(jī)按鈕。曾經(jīng)測試過刪除某個文件,文件比較大,刪除很慢,界面沒有任何反應(yīng),無法判斷是否在刪除文件,迫不及待的重新亂按手機(jī)其他鍵,導(dǎo)致系統(tǒng)出現(xiàn)錯誤。
第四篇:軟件測試流程
每個軟件測試階段都要經(jīng)歷以下步驟:測試需求分析、測試過程設(shè)計(jì)、測試實(shí)現(xiàn)、測試實(shí)施、測試評價(jià)、測試維護(hù)。
1.測試需求分析:整個測試過程的基礎(chǔ);確定測試對象以及測試工作的范圍和作用。
2.測試過程設(shè)計(jì):包括測試計(jì)劃,測試策略制定,測試時間安排用,測試用例編寫等
3.測試實(shí)現(xiàn):環(huán)境配置好了,新的版本也收到了,人員也都培訓(xùn)好了等等
4.測試實(shí)施:已經(jīng)按照測試計(jì)劃進(jìn)行展開了,比如手工測試,自動化測試等
5.測試評價(jià):對版本測試覆蓋率,測試質(zhì)量,人員測試工作以及前期的一些工作制定情況進(jìn)行評價(jià)
6.測試維護(hù):對測試用例庫,測試腳本,bug庫等進(jìn)行維護(hù),保證延續(xù)性等
軟件測試過程
軟件測試過程按各測試階段的先后順序可分為單元測試、集成測試、確認(rèn)(有效性)測試、系統(tǒng)測試和驗(yàn)收(用戶)測試5個階段,如圖3所示。
(1)單元測試:測試執(zhí)行的開始階段。測試對象是每個單元。測試目的是保證每個模塊或組件能正常工作。單元測試主要采用白盒測試方法,檢測程序的內(nèi)部結(jié)構(gòu)。
(2)集成測試:也稱組裝測試。在單元測試基礎(chǔ)上,對已測試過的模塊進(jìn)行組裝,進(jìn)行集成測試。測試目的是檢驗(yàn)與接口有關(guān)的模塊之間的問題。集成測試主要采用黑盒測試方法。
(3)確認(rèn)測試:也稱有效性測試。在完成集成測試后,驗(yàn)證軟件的功能和性能及其他特性是否符合用戶要求。測試目的是保證系統(tǒng)能夠按照用戶預(yù)定的要求工作。確認(rèn)測試通常采用黑盒測試方法。
(4)系統(tǒng)測試:在完成確認(rèn)測試后,為了檢驗(yàn)它能否與實(shí)際環(huán)境(如軟硬件平臺、數(shù)據(jù)和人員等)協(xié)調(diào)工作,還需要進(jìn)行系統(tǒng)測試??梢哉f,系統(tǒng)測試之后,軟件產(chǎn)品基本滿足開發(fā)要求。
(5)驗(yàn)收測試:測試過程的最后一個階段。驗(yàn)收測試主要突出用戶的作用,同時軟件開發(fā)人員也應(yīng)該參與進(jìn)去。
第五篇:軟件測試一般流程[模版]
一般測試流程:
1.需求分析階段:只要就是對業(yè)務(wù)的學(xué)習(xí),分析需求點(diǎn)。
2.測試計(jì)劃階段:測試組長就要根據(jù)SOW開始編寫《測試計(jì)劃》,其中包括人員,軟件硬件資源,測試點(diǎn),集成順序,進(jìn)度安排和風(fēng)險(xiǎn)識別等內(nèi)容。
3.測試設(shè)計(jì)階段:測試方案一般由對需求很熟的高資深的測試工程師設(shè)計(jì),測試方案要求根據(jù)《SRS》上的每個需求點(diǎn)設(shè)計(jì)出包括需求點(diǎn)簡介,測試思路和詳細(xì)測試方法三部分的方案?!稖y試方案》編寫完成后也需要進(jìn)行評審。
4.測試方案階段:主要是對測試用例和規(guī)程的設(shè)計(jì)。測試用例是根據(jù)《測試方案》來編寫的,通過《測試方案》階段,測試人員對整個系統(tǒng)需求有了詳細(xì)的理解。這時開始編寫用例才能保證用例的可執(zhí)行和對需求的覆蓋。測試用例需要包括測試項(xiàng),用例級別,預(yù)置條件,操作步驟和預(yù)期結(jié)果。其中操作步驟和預(yù)期結(jié)果需要編寫詳細(xì)和明確。測試用例應(yīng)該覆蓋測試方案,而測試方案又覆蓋了測試需求點(diǎn),這樣才能保證客戶需求不遺漏。同樣,測試用例也需要評審。
5.測試執(zhí)行階段:執(zhí)行測試用例,及時提交有質(zhì)量的Bug和測試日報(bào),測試報(bào)告等相關(guān)文檔。