Android Testing學習01 介紹 測試測什麼 測試的型別
Android 測試 測什麼
1.Activity的生命週期事件
應該測試Activity的生命週期事件處理。
如果你的Activity應該在onPause()和onDestroy()中儲存狀態,並在onCreate()中恢復;你應該寫測試去證明:狀態能夠被正確地儲存和恢復。
配置改變事件也需要被測試,因為有些事件會導致當前Activity的重建,比如螢幕旋轉有時候會重建Activity。你應當去測試事件是否被正確地處理,新建的Activity是否儲存了之前的狀態。
2.資料庫和檔案系統操作
資料庫和檔案系統的操作應當被測試,確保它們正確地處理。
這些操作應該在三個層次被測試:1.低層次的獨立測試;2.高層次的通過Content Provider的測試;3.從應用本身出發的測試。
3.裝置的物理特性
在釋出你的應用之前,你應該確認在所有支援的裝置上,應用都能正常執行。或者至少要找出不支援的情況,並採取一些措施。、
在裝置特性中,你可能發現你需要測試:
網路效能;
螢幕密度;
螢幕解析度;
螢幕尺寸;
可用的感測器;
鍵盤和其他輸入裝置;
GPS;
外部儲存;
還有很多要測試的內容,可以看看谷歌官網的:what to test: http://developer.android.com/tools/testing/what_to_test.html
測試的種類
測試分為:
單元測試 Unit tests
單元測試的粒度最細,用於測試方法、單獨的事件等。
Android單元測試基於JUnit 3。
為了獨立地測試元件,Android提供了這個包android.test.mock,來提供一些樁物件,即模擬物件。
整合測試 Integration tests
整合測試用於測試元件聯合起來執行的情況。即經過單元測試的獨立元件現在整合在一起,進行較大粒度的測試。
功能或接受性測試 Functional or acceptance tests
商務或QA人員進行的測試。
有一些工具:
效能測試 Performance tests
壓力測試,通常通過重複性的操作來進行測試。用於找到效能瓶頸,之後才針對瓶頸進行優化。
系統測試 System tests
系統作為一個整體測試,測試各個元件間的互動,測試軟體和硬體。
一般的,系統測試包含下列幾種測試:
GUI tests
Smoke tests
Performance tests
Installation tests
Android testing framework
Android的測試框架基於JUnit,並做了一些擴充套件。
特點:
Instrumentation框架是測試框架的基礎,它控制測試中的應用並且允許mock元件的注入。
參考資料
《Android Application Testing Guide》
Android Testing官網連結:
http://developer.android.com/tools/testing/index.html