當前位置:首頁 » 手機軟體 » 手機軟體測試項目
擴展閱讀

手機軟體測試項目

發布時間: 2023-09-25 23:27:30

① 手機應用軟體測試經驗總結

隨著科技的進步,手機款型可謂日新月異,功能也越來越豐富。相應的,越來越多的手機應用軟體也伴隨著手機功能的多樣化應運而生。面對種類眾多的手機應用軟體,該如何進行測試,測試時又需要重點關注什麼呢?本文檔由國內專業移動應用測試雲服務平台-愛內測( www.ineice.com )的測試工程師分享。

對於產品的手機項目(應用軟體),主要是進行系統測試。而針對手機應用軟體的系統測試,我們通常從如下幾個角度開展:功能模塊測試,交叉事件測試,壓力測試,容量測試,兼容性測試,易用性/用戶體驗測試等。

1、功能模塊測試:首先應分析功能模塊的功能項,測試每個功能項是否能夠實現對應的功能。一般根據測試用例(Test Case)或軟體本身的流程就可以完成基本功能測試(相對簡單,故障也較容易發現、解決)。

2、交叉事件測試:又叫事件或沖突測試,是指一個功能正在執行過程中,同時另外一個事件或操作對該過程進行干擾的測試。例如通話過程中接收到簡訊或鬧鈴觸發,應用軟體運行過程中插拔充電器等。執行干擾的沖突事件不能導致應用軟體異常、手機死機或花屏等嚴重問題。另外,還需要注意各交叉事件的優先順序別,檢驗系統是否能依據各事件的優先順序別依次進行處理。不能因執行優先順序別高的事件而導致優先順序較低的事件弔死。

交叉事件測試非常重要,一般能發現應用軟體中一些潛在的問題。另外有中英文模式切換的手機要注意中英文模式切換後的功能實現存在的問題(這個主要針對手機應用軟體支持語言自適應功能),這一點通常會被測試人員忽略。

3、壓力測試:又叫邊界值容錯測試或極限負載測試。即測試過程中,已經達到某一軟體功能的最大容量、邊界值或最大的承載極限,仍然對其進行相關操作。例如連續進行簡訊的接收和發送,超過收件箱和SIM卡所能存儲的最大條數,仍然進行短消息的接收或發送,以此來檢測軟體在超常態條件下的表現,進而評估用戶能否接受。

對手機可以施加的壓力測試類型主要有:

●存儲壓力:由於手機採用的是棧式存儲,所以當一個存儲塊滿了之後,如果程序員不做相應處理或者處理不好的話,很容易造成其他存儲區被擦除,從而在UI上出現問題(比如其他功能無法正常使用,出現異常)。



邊界壓力:邊界處理一直是程序員最容易忽略的地方。



響應能力壓力:有時候某個操作可能處理的時間很長,在處理期間如果測試者再不斷地進行其他操作的話,很容易出現問題。



網路流量壓力:執行較大數據流量的功能的同時,再進行其他功能操作,使得網路流量始終處於很高的狀態(如視頻通話時再進行簡訊等其他功能操作),驗證各功能是否依然能正常工作,是否存在因網路流量瓶頸而引起某功能異常。

壓力測試用手工測試可能很繁鎖,可以考慮自動化測試。遺憾的是,目前還沒有較為大量使用的工具,一般都是由開發人員配合開發出的工具,或者高級的測試人員編寫出的腳本。

4、容量測試:即存儲空間已滿時的測試,包括手機用戶可用內存和SIM卡的所有空間被完全使用的測試。此時再對可編輯的模塊進行和存儲空間有關的任何操作測試,如果軟體在極限容量狀態下處理不好,有可能導致死機或嚴重的花屏等問題的出現。

5、兼容性測試:也就是不同品牌、款型的手機(針對目前我們產品來說,主要是針對不同品牌、款型的手機上的測試),不同網路,不同品牌和不同容量大小的SIM卡之間的互相兼容的測試。以短消息為例:中國電信的小靈通接收到從中國移動或中國聯通GSM發來的短消息,需要驗證顯示和回復功能是否正常等。再比如,應用軟體分別在Nokia N80、N93手機上運行,各功能是否均能正常使用,界面是否均顯示正常等。

6、易用性/用戶體驗測試:易用性(Useability)/用戶體驗是指在指定條件下使用時,軟體產品被理解、學習、使用和吸引用戶的能力,是交互的適應性、功能性和有效性的集中體現。

G7A�x�K)M

② 做Android手機軟體測試需要掌握哪些工具

請注意測試本身不是靠工具的而是靠設計,這是我的理念,所以我一向覺得,很多人認為做測試做的好就是靠掌握一門好的工具,這個觀點是不正確的,所以我可以負責任的告訴你,做Android手機需要掌握的不是工具、而是理念、思維、以及框架,總的來說是本質,而工具只是輔助,那麼現在我來介紹一些我了解的工具(僅僅是了解,很多沒用過)
開源 Android 軟體測試工具包括:Android Test Kit, AndroidJUnit4, Appium, calabash-android, Monkey, MonkeyTalk, NativeDriver, Robolectric, RoboSpock, Robotium, UIAutomator, Selendroid。
Android Test Kit
Android Test Kit 是一組 Google 開源測試工具,用於 Android 平台,包含 Espresso API 可用於編寫簡潔可靠的 Android UI 測試。
AndroidJUnit4
AndroidJUnit4 是一個讓 JUnit 4 可以直接運行在 Android 設備上的開源命令行工具。
Appium
Appium 是一個開源、跨平台的自動化測試工具,用於測試原生和輕量移動應用,支持 iOS, Android 和 FirefoxOS 平台。Appium 驅動蘋果的 UIAutomation 庫和 Android 的 UiAutomator 框架,使用 Selenium 的 WebDriver JSON 協議。Appinm 的 iOS 支持是基於 Dan Cuellar's 的 iOS Auto. Appium 同時綁定了 Selendroid 用於老的 Android 平台測試。
Calabash-android
calabash-android 是一個基於 Cucumber 的 Android 的功能自動化測試框架。Calabash 允許你寫和執行,是開源的自動化移動應用測試工具,支持 Android 和 iOS 原生應用。Calabash 的庫允許原生和混合應用的交互測試,交互包括大量的終端用戶活動。Calabash 可以媲美 Selenium WebDriver。但是, 需要注意的是 web 應用和桌面環境的交互跟觸摸屏應用的交互是不同的。Calabash 專為觸摸屏設備的原生應用提供 APIs。
Monkey
Monkey 是 Google 開發的 UI/應用測試工具,也是命令行工具,主要針對壓力測試。你可以在任意的模擬器示例或者設備上運行。Monkey 發送一個用戶事件的 pseudo-random 流給系統,作為你開發應用的壓力測試。
MonkeyTalk
MonkeyTalk 是世界上最強大的移動應用測試工具。MonkeyTalk 自動為 iOS 和 Android 應用進行真實的,功能性交互測試。MonkeyTalk 提供簡單的 "smoke tests",復雜數據驅動的測試套件。MonkeyTalk 支持原生,移動和混合應用,真實設備或者模擬器。MonkeyTalk 使得場景捕獲非常容易,可以記錄高級別,可讀的測試腳本。同樣的命令可以用在 iOS 和 Android 應用上。你可以記錄一個平台的一個測試,並且可以在另外一個平台回放。MonkeyTalk 支持移動觸摸和基於手勢交互為主的移動體驗。點擊,拖拽,移動,甚至是手指繪制也可以被記錄和回放。
NativeDriver
NativeDriver 是 WebDriver API 的實現,是原生應用 UI 驅動,而不是 web 應用。
Robolectric
Robolectric 是一款Android單元測試框架,使用 Android SDK jar,所以你可以使用測試驅動開發 Android 應用。測試只需幾秒就可以在工作站的 JVM 運行。Robolectric 處理視圖縮放,資源載入和大量 Android 設備原生的 C 代碼實現。Robolectric 允許你做大部分真實設備上可以做的事情,可以在工作站中運行,也可以在常規的 JVM 持續集成環境運行,不需要通過模擬器。
RoboSpock
RoboSpock 是一個開源的 Android 測試框架。提供簡單的編寫 BDD 行為驅動開發規范的方法,使用Groovy 語音,支持 Google Guice 庫。RoboSpock 合並了 Robolectric 和 Spock 的功能。
Robotium
Robotium 是一款國外的Android自動化測試框架,主要針對Android平台的應用進行黑盒自動化測試,它提供了模擬各種手勢操作(點擊、長 按、滑動等)、查找和斷言機制的API,能夠對各種控制項進行操作。Robotium結合Android官方提供的測試框架達到對應用程序進行自動化的測 試。另外,Robotium 4.0版本已經支持對WebView的操作。Robotium 對Activity,Dialog,Toast,Menu 都是支持的。
UIAutomator
uiautomator 測試框架提高用戶界面(UI)的測試效率,通過自動創建功能 UI 測試示例,可以在一個或者多個設備上運行你的應用。
Selendroid
Selendroid 是一個 Android 原生應用的 UI 自動化測試框架。測試使用 Selenium 2 客戶端 API 編寫。Selendroid 可以在模擬器和實際設備上使用,也可以集成網格節點作為縮放和並行測試。

③ 手機軟體測試的基本流程

手機軟體測試的基本流程:

1、需求分析階段:閱讀需求,理解需求,分析需求點,參與需求評審會議。

2、測試計劃階段:主要任務就是編寫測試計劃,參考軟體需求規格說明書,項目總體計劃,內容包括測試范圍,進度安排,人力物力分配,整體測試策略的制定。

3、編寫測試用例:適當的了解設計,搭建測試用例框架,根據需求和設計編寫測試用例。

4、測試執行階段:搭建環境准備數據,執行預測試然後進入正式測試(系統測試、回歸測試、交叉測試、自由測試),bug管理直到測試結束。

5、輸出測試報告:輸出測試報告,確認是否可以上線。

(3)手機軟體測試項目擴展閱讀

軟體測試方法

1、動態測試

計算機動態測試的主要目的為檢測軟體運行中出現的問題,較靜態測試方式相比,其被稱為動態的原因即為其測試方式主要依賴程序的運用,主要為檢測軟體中動態行為是否缺失、軟體運行效果是否良好。

2、黑盒測試

黑盒測試,顧名思義即為將軟體測試環境模擬為不可見的「黑盒」。通過數據輸入觀察數據輸出,檢查軟體內部功能是否正常。測試展開時,數據輸入軟體中,等待數據輸出。數據輸出時若與預計數據一致,則證明該軟體通過測試。

3、白盒測試

白盒測試相對於黑盒測試而言具有一定透明性,原理為根據軟體內部應用、源代碼等對產品內部工作過程進行調試。

測試過程中常將其與軟體內部結構協同展開分析,最大優點即為其能夠有效解決軟體內部應用程序出現的問題,測試過程中常將其與黑盒測試方式結合,當測試軟體功能較多時,白盒測試法亦可對此類情況展開有效調試。