1. 安裝和啓動安全
(1) OTA安裝測試網絡
· app必須可以經過ota安裝到測試設備上閉包
· 若是app安裝完後沒有icon,那麼必須可以經過其餘的方法來啓動這個app併發
· app安裝好之後不能要求重啓設備app
· 若是存儲空間不夠,安裝時必須提示信息佈局
(2)啓動時間:性能
· 若是app啓動須要很長時間,app必須給出合理的提示測試
· 若是啓動時間超過5秒,必須有進度條來告訴用戶啓動的進度。加密
(3)卸載app:設計
· app必須可以被從設備中卸載
· 全部的app文件和數據都必須被徹底從設備上清除
· 雲端的文件能夠保留
· 額外購買的數據或者內容,須要保留在設備中
2. 功能性
主要功能的健全性檢查:app的功能要與需求一致
app的隱藏功能:app沒有包含任何隱藏功能,全部的功能與幫助文檔一致,並不會損害設備的數據。
3. 內存使用
(1)app運行中的內存使用:
· 在app執行過程當中,若是出現內存用完的異常,app須要可以正確處理。
· 當內存趨於耗盡的時候,須要一個警告提示,告知用戶內存即將耗盡。
(2)屢次啓動:
· 可以正確suspend以及從新啓動app(這裏的suspend是指將app的運行放到後臺)
· 當app被suspend後,可以正確的重啓它(能夠是從被suspend的狀態,也能夠是從初始狀態,這個依賴於app的設計)
(3)Idle:
· app可以從自動鎖屏中正確恢復
· app運行中,若是自動鎖屏,解鎖後app可以恢復到鎖屏以前的狀態。
(4)取消耗時的操做:
· app必須可以容許用戶取消耗時的操做:
· 若是操做消耗的時間操做10秒,必須有可以取消這個操做的功能。
4. 網絡鏈接
(1)發送和接收數據:
app必須可以經過http來接收和發送數據
在不一樣的網絡環境下(2G/3G/4G/Wifi),用戶在每一個須要發送或接收數據的地方都可以正確的運行。
(2)網絡延遲和鏈接丟失:
app必須可以正確處理網絡延遲和鏈接丟失
在網絡有延遲或者鏈接丟失的狀況下,app必須給出相應的錯誤提示,告知用戶信息。
(3)飛行模式:
當設備處於飛行模式時,app必須可以正確運行
若是app須要使用網絡鏈接,在設備處於飛行模式的時候,須要給出有意義的提示,告訴用戶app目前由於設備處理飛行模式而沒法正常運行。
當網絡恢復後,app必須可以恢復到原來的狀態,並繼續正常工做。
(4)資源下載:
當app在下載資源的時候,它必須可以處理暫停下載/繼續下載和下載中斷的事件
若是有暫停下載功能,這個功能必須運行正常
當網絡鏈接斷開時,下載可以正確中止
當網絡恢復時,下載必須可以正確繼續或者從新開始。
5.事件處理
(1)超時事件的處理
若是app內部有時間事件的功能,當這個超時事件發生時,必須可以被正確處理。
(2)App處於suspend狀態時,可以正確樹立超時事件
當app被放到後臺後,超時時間發生時,app可以正確處理這些事件,而且正確恢復狀態,繼續運行
(3)當app已經退出時,超時事件可以被正確處理
app已經退出,可是app的超時事件發生時,應該提供一個start選項,或者app被啓動。
啓動後app可以正確運行。
(4)夏令時效果的檢查。
若是一個app使用了與時間相關的數據,那麼須要檢查當時間切換到夏令時時,全部的功能都能正確運行。
(5)時區的處理
若是一個app使用了與時間相關的功能或數據,當設備的時區切換時,須要檢查多有的相關功能都工做正常。
6. 消息和電話
發送:app可以成功發送信息
接收:app可以成功接收信息
呼入:當用戶在app運行時接了一個電話的時候,當這個電話結束時,app可以正確的從原來的狀態繼續運行。
7.外部影響
中斷操做:當有中斷事件發生時(USB插入/拔出,充電器/藍牙鏈接/郵件/鬧鐘/電量提醒/耳機/NFC等設備的鏈接和斷開的時候),app可以從原狀態繼續正確運行。
8.用戶界面
可讀性:app的全部內容都是清晰可讀的
閱讀時間:app給出的信息若是是時間性的,那麼用戶就須要有一個舒服的時間來完成對這些信息的閱讀
屏幕的重寫:當app的不一樣界面切換的時候,不能出現閃爍,或者界面的混亂。
一致性:app的界面應該保持一致性,包括動做序列,工做結果,用於,界面佈局,聲音等。
按鍵/輸入的易用性:按鍵的佈局/硬鍵盤輸入/軟鍵盤輸入/觸摸屏輸入都必須易用,同時知足左右手的習慣。
UI的速度:在app設計的使用場景下,app的速度不能太快,也不能太慢,以提供良好的使用體驗。
錯誤信息:當須要出現錯誤信息的時候,信息必須清晰的解釋問題,以及提供須要採起的動做
功能進度:當功能的運行須要超過5秒的時候,須要給用戶提供進度條或者相似提示
動做的展示:當app在展示或者思考的時候,app不能執行不合理的動做
多種顯示模式:若是app支持多種顯示模式(橫屏/豎屏/外接設備),全部的用戶界面和控件都能正確展現。若是設備有橫屏的外接輸入設備,那麼app須要可以哦支持橫屏的展示。
不一樣屏幕尺寸:app須要可以支持不一樣屏幕尺寸的展現
多種輸入方法的支持:app須要可以支持不一樣的輸入方法
加速度計/移動感應器的響應:加速度計/移動感應器的response不能影響UI的展現和app的使用。
拼寫錯誤:app不能出現拼寫錯誤
文本的技術錯誤:全部的文本展現不能出現文本扭曲/斷裂/重疊/切斷等錯誤
9.語言
正確操做:若是設備支持不一樣的語言,當設備設置不一樣的語言時,app都要可以正確工做。
手動選擇:若是app容許手動選擇語言,app要可以選擇全部的語言並繼續正確工做。
支持的格式:app要可以支持不一樣的日期/時間/數字/貨幣等格式
國際字符:app可以正確接受並顯示全部的國際字符
10. 恢復
從主菜單suspend和恢復:app可以正確suspend,而且從suspend狀態恢復
運行中的suspend:app運行時,可以正確被suspend,佔用的設備和資源可以被正確釋放,恢復後能正確運行。
後臺運行:當app被切換到後臺運行時,不能影響其餘app或者系統功能,不能播聽任何聲音,全部系統的功能都能正常運行。
資源的共享:app可以和其餘app正確共享資源:好比聯繫人(新增/刪除/修改等)
退出時恢復系統設置:app不能永久的修改系統設置,退出時應該要恢復,好比音量,語言,屏幕的方向等。
11. 多媒體
Mute功能:若是app須要操做聲音或者話筒,那須要有相應的音量控制和話筒控制的功能。
設置的可理解性:app的全部設置狀態都要易於理解。
設置不能影響功能:全部的app的設置不能影響功能的運行
app本身的設置可以被正確保存:退出時能正確保存,或者提示保存信息。
聲音和振動不被濫用:聲音和振動的使用都要提供良好的用戶體驗。
12. 菜單
幫助和about文檔:
app須要包含幫助文檔,說明如何使用該app
app須要包含about文檔,用戶能夠看到具體的版本號
有效的動做:
選擇app的每一個item都應該調用相應的有效的動做
13. 按鍵
菜單的滾動:使用鍵盤或者其餘導航設備的時候,菜單要可以順利滾動
文本輸入框的滾動:在help/about等文本域中,使用外設或者其餘導航設備時可以正確滾動。
暫停:若是app有須要與用戶進行交互的功能,那麼app須要有一個暫停功能,也要有一個繼續功能,好比遊戲。
併發按鍵輸入或併發觸摸的支持:app須要可以支持併發的按鍵輸入或者併發的觸摸輸入,若是須要提示錯誤信息,則信息必須清晰可理解。
設備按鍵:app不能改變設備的默認按鍵行爲,好比音量控制,鎖屏等
14. 穩定性
app的穩定性:app在使用過程當中不能crash或者freeze
強制關閉的穩定性:當被強制關閉的時候,app必須可以保存足夠的狀態信息,並能正確啓動並繼續運行(強制關閉包括斷電/手動關閉等)
15. 數據處理
保存遊戲狀態:app可以將遊戲的狀態/得分等信息保存進存儲器中。
數據刪除:app必須指出數據是否將被刪除或者提供一個易用的數據恢復手段。
內存記錄:app可以正確更新存儲器中保存的數據和狀態信息。
16. 安全性
當用網絡鏈接來發送或接收敏感數據的時候,這些數據須要被加密。
密碼:密碼和敏感數據不會被存儲到設備中,也不會在app中反饋出來,敏感數據必須被密碼保護。當須要提示用戶信息的時候,最多隻能有25%的數據被顯示出來。
17. 隱私
若是app須要訪問我的信息,那麼必須提供隱私條例,沒有用戶的容許,app不能訪問隱私信息。沒有訪問到用戶信息時,app也必須能正常工做
地點信息:若是app須要使用用戶的地點信息,必須獲得用戶的許可
推送提示信息:app在推送信息前,必須獲得用戶的許可
18. 廣告
app必須符合內嵌廣告規則:內嵌廣告不得影響用戶的使用
19. 性能
網絡性能:音頻相關的功能必須可以識別不一樣的網絡環境,限制訪問時間和數據量(最多5分鐘,最多5M),視頻相關的功能也必須可以識別不一樣的網絡環境,限制訪問時間和數據量(最多十分鐘)
電池性能:app不能快速的耗電。