關注微信公眾號「軟體測試藝術」,回復「軟體測試教程」關鍵字獲取全套測試教程下載鏈接,一起學習,一起提高。

今天主要講解使用Fiddler抓包工具抓取華為手機上天氣APP的數據,然後對數據進行更改,測試溫度、天氣動畫等顯示。測試機為華為榮耀MAX 8X,Android P系統,測試北京的天氣顯示。本文主要講解分析和測試方法,因為不同的品牌手機使用的天氣介面不一樣,導致需要修改的介面數據不一樣,需要我們融會貫通。首先要找到天氣APP調用數據的網站,如華為天氣APP都是從中國天氣通accuweather.com/獲取的數據,然後就去搜索對應的網站開發API,如當前我獲取到如下對應的網址:

天氣圖標developer.accuweather.com

所有數據介面developer.accuweather.com

當前天氣API的詳細介紹,可以看這個網頁來確認每個欄位的意義,後續根據這個來修改

developer.accuweather.com

開始測試:

1、首先PC端配置好Fiddler能對手機程序進行抓包,具體怎麼安裝和配置就不多說了,網上可以找到非常多的文章,按照步驟幾分鐘就可以配置好,推薦一篇配置的文章如下:

cnblogs.com/meitian/p/4

2、在手機上打開天氣APP,先任意刷新下,抓取部分天氣APP的數據,主要是獲取到天氣APP使用的天氣介面,如當前的介面是api.accuweather.com

防止不必要的其他數據,將該介面網址添加到過濾器,界面顯示如截圖設置:

備註:如果刷新的時候沒有數據是因為天氣APP有緩存數據沒有去請求,這個時候多刷新幾次就可以,或者先移除該城市然後在添加

3、將獲取的到數據保存到本地,使用電腦中已有的文本工具打開然後保存即可,格式可以是txt或者html都可,本文保存為html的格式,保存後數據如下:

4、添加一個新城市,獲取到APP所有的請求介面,如華為手機天氣APP獲取到的所有介面數據網址共有6個介面,如下圖所示:

Current Conditions API獲取特定位置的當前條件數據。這個介面獲取的數據就是顯示當前溫度的,也就是我們天氣APP看到的當前城市溫度;

Forecast API獲取特定位置的預測信息。Hourly主要是預測返回1H、12H、24H、72H、120H的天氣數據信息;Daily主要預測返回1D、5D、10D、15D的天氣數據信息;

Locations API獲取所需位置的位置信息,然後使用位置信息從Forecast或Current Conditions API中檢索天氣數據。

Airquality API官方API中沒有找到該介面描述,從名稱來看就是反饋空氣質量數據的。

5、將6個介面的數據都保存下來留存好,點擊界面右下角的「View in NotePad「或」…「,使用本機的文檔工具打開,然後選擇另存為保存到電腦本地,保留的步驟如下:

保存下來的6個重要文件如下:

6、通過分析上述的介面,找到需要更改的數據,然後進行更改,如需要更改溫度為顯示為80度,我們可以更改currentconditions.htm中的數據,將欄位「Temperature「的華氏溫度設置為176即可,如下圖:

7、將如下圖中的介面添加到AutoResponder規則器中,注意後續測試的時候也要選擇101924的地區(北京地區,不同的ID Key代表的地區不一樣,測試選錯地區則匹配不上)「api.accuweather.com/cur

8、替換Response文檔,即當前界面替換之前修改溫度的文本(currentconditions.htm),如下圖,然後點擊Save,具體的替換方式網上有非常多的介紹:

9、刷新當前區域的手機,查看溫度顯示,如下我的測試機顯示截圖(注意可能刷不出來,記得移除城市在添加):

9、如其他的更改天氣圖標、天氣警報、惡劣天氣動畫顯示、空氣質量等都可以通過修改對應的響應文件修改數據後然後重啟請求,如顯示如下。

備註:

1)在修改如空氣質量指數的各種如PM2.5,NO2,SO2,O3,CO等值的時候,如果值從1位修改為2位的數值,一定要把原始值「2.000」修改為「22.00」才能生效,如果要改成3位的則為「123.0」,相應的小數位同時要去掉1位。如果原數字為「22.0」則最大只能修改為「99.0」暫未找到原因,例如上圖中的PM2.5值和空氣指數。

大家可以嘗試測試其他的APP更改界面顯示的內容,今天就講到這裡了,主要講解Fiddler的AutoResponse用法及其分析思路。

好了,到現在為止主要使用Fiddler工具測試了手機天氣APP中各種界面顯示,本文主要講解的分析和測試方法,可以運用到其他各種APP界面顯示等測試。還有注意測試完之後一定要記得將手機WIFI設置的主機和埠去掉,否則當電腦沒開的時候手機是無法上網的。

軟體測試藝術:軟體測試全套資料-從入門到進階到的都有,看過來?

zhuanlan.zhihu.com
圖標

關注微信公眾號「軟體測試藝術」,回復「軟體測試教程」關鍵字獲取下載鏈接,一起學習,一起提高。

推薦閱讀:

相关文章