測試目的:避免受歡迎的app被工信部點名下架給公司造成影響
測試環境搭建:
- 手機先安裝xposed,也就是虛擬系統,務必使用我提供的xpose的apk,不然你可能出現安裝的xpose虛擬apk以後,在選擇安裝軟件的時候,會出現不支持32位安裝,這樣就無法測試,這時你只能選擇32位還是64位的Xposed;
- 安裝sherlock apk,直接安裝手機,具體apk地址github地址是:https://github.com/AbandonCoding/sherlock,你可以自己編譯apk;
- 安裝測試的apk,然後點擊打開VirtualXposed軟件,
點擊添加應用,然後選擇sherlock和測試的apk,然後點擊安裝,安裝結束以後; - 在Xposed的設置頁面,點擊模塊管理,選中,
然後返回到設置頁面 - 在xposed的頁面,進行上拉,
然後點擊sherlock,進入到首頁,顯示helloworld,
然後返回到應用頁面; - 然後點擊需要測試的app,打開以後,進行操作,然後操作完以後,然後隱藏;
- 在搜索應用頁面,點擊xpose installer,進入的頁面,點擊設置,
進入的頁面,點擊日誌,就可以看到被測試的app的一些日誌;(記得要先打開sherlock,再打開測試app) - 主要關注日誌哪些權限被調用了;
測試原理:
整體Xposed框架模塊的工作原理就是Hook,Hook使它能夠將自身的代碼融入被Hook的程序進程中,成爲目標進程的一個部分,然後進行監控app的輸出;
工具apk下載地址:
鏈接:https://pan.baidu.com/s/11elMYQ3eCvG2N_F-O1nQhw
提取碼:4399
測試場景:
1.進入測試app以後,然後在沒有點擊授權的情況下,退出app,然後查看日誌,看是否有調用權限,如果沒有是正常的,有就是不正常;
2.進入測試app以後,點擊授權,然後授權結束以後,進入到app首頁,然後查看日誌,是否調用的權限是我們目前app所需要的權限,這個權限可以跟開發確定,然後查看是否多獲取了權限,如果有的話,提交Bug;
3.針對某些需要獲取權限的場景,進行權限獲取,確認是否獲取了多餘權限;
4.進行常規測試功能使用,然後查看獲取的權限,是否多獲取了,這個具體APP會獲取哪些權限,可以直接跟開發確認或者反編譯apk,查看配置文件;
5.app使用過程,看下獲取的權限頻率是否過多;目前頻率是否過多,比較難以衡量,具體就看下這個場景是否需要以及根據工信部的要求來確認;