1. 程式人生 > >SDK自動化測試中利用python指令碼修改手機系統時間

SDK自動化測試中利用python指令碼修改手機系統時間

 在除錯SDK自動化測試指令碼的過程中,遇到需要通過調節手機系統時間來達到SDK推廣彈窗的彈出條件。接下來的內容是關於如何利用自動化實現系統時間的更新。

一、命令生效性

1、利用adb shell 檢視當前的手機系統時間:

2、利用adb shell date -s "yyyymmdd.hhmmss"命令修改手機系統時間

二、邏輯處理

    總體的的邏輯就是修改【修改手機系統時間的命令】中的日期欄位,然後將修改後命令發出來,以達到修改手機系統時間的目的。因此,我們指令碼的處理步驟:

    第一步:編輯一份符合要求的日期文件,暫且命名為month.txt如下圖:

    

   第二步:將month.txt文件內的欄位轉化成字典。

    

    第三步:利用adb shell date命令讀取手機當前系統時間,然後做字串處理  

    

     

   第四步:處理年月日和時分秒的格式,藍色框內的k為變數,在其他方法內呼叫修改時間的方法時,可作引數傳遞,從而達到不同的SDK推廣邏輯可以複用該方法。

    

    藍色框部分涉及到的strip()函式:該函式是用來做字串刪除處理的。用法為s.strip()。s為字串,rm為要刪除的字元序列

   (1)s.strip(rm)        刪除s字串中開頭、結尾處,位於 rm刪除序列的字元

2s.lstrip(rm)       刪除s字串中開頭處,位於 rm刪除序列的字元

(3s.rstrip(rm)      刪除s字串中結尾處,位於 rm刪除序列的字元

(4)當rm什麼都沒有,預設刪除空白符(包括'\n', '\r',  '\t',  ' ')

    實際輸出的結果為:

    

   第五步:處理日期格式,即幾號的格式問題,將其全部處理為01,02,03,04.........10,11...........30,31,

   

    第六步:然後os.popen(str2),將修改後的命令發出,從而達到修改手機系統時間的目的。