我膨脹了,測試必要商城小程式,用了3種方式!

2022-07-04 11:24:12 字數 2022 閱讀 9199

四、總結

搜一搜:如果從來沒有搜尋過,在這裡點選一下它,歷史記錄是空的。但是如果曾經搜尋過,那一定有歷史記錄。如果不是第一次點選它,用自動化指令碼再次點選的話,不會讓你輸入進去,會報錯。

那就只能從歷史記錄中來選,所以點選一下後要等到歷史記錄中的資訊出來。

可以看到是歷史記錄沒錯,但是歷史記錄它是乙個 webview。

用座標,通過 adb 命令執行點選操作,adb shell input tap 281 205281 205 是座標點。

如果有多個歷史記錄,座標肯定會變。自己的手機,保證歷史記錄對應的位置正確就好了。假設測試機也是自己操作,就是測試環境要保持獨立。

點選了必要**之後,還不夠。座標可以取百分比,但是要注意百分比要控制好。進入必要**後,這個地方仍然是個 webview,我還是沒有許可權,只能繼續用座標。

但是這個地方座標範圍就很大了,「必要**-小程式」這一整塊都可以點選,選乙個中間的點,這裡用比例算一下,應該還是可以的。

大概預估一下,在多個機型中試一下,因為這個需要你不斷測試,測試調整百分比基數的,確保你達到一定的成功率。點選進入小程式頁面:

這裡面的內容,在 web 網頁隨便都能找到的。所以這個地方一進來之後就要切換,但是載入也需要時間。所以載入的時間要稍微等一等。

可以保證首頁、我的、分類、購物車出現,然後 sleep 5 秒鐘,盡量保證中間區域可以載入出來。

這裡用到了 14 秒鐘。10 秒也是可以的,因為這裡比較慢。現在列印當前所有的上下文cons=driver.contexts。列印出來後,要切換到 context,這個時候切換和之前的 webview 是不一樣的。

切進來之後,其實就是個小型的應用系統嵌在這裡面來了。那它可能就不止乙個視窗了。不像乙個頁面中那麼簡單,小程式就複雜一點。

可能不止乙個視窗,所以在進來之後,不要著急,不要認為肉眼看到的,當前就在這個頁面。

還需要你先獲取當前的所有視窗控制代碼,要判斷你要操作的元素是否在當前的頁面當中。如果不在,那就得換乙個,因為乙個視窗控制代碼就代表乙個頁面。

所以獲取了當前所有的視窗的控制代碼:hs=driver.window_handles,拿到之後對它做了個遍歷:

for handle in hs:

driver.switch_to.window(handle)

#首先切換到這個視窗當中,因為我不知道哪個視窗包含了我要的元素,切換完成之後,我會判斷一下

#當前這個視窗對應的頁面的原始碼當中,有沒有我要找的。比如視窗中有很多必要**相關的,可以寫必要**相關的,各種文字都可以用,比如**、美妝啊。

print("切換到視窗:",handle)

time.sleep(3)

#print(driver.page_source)

if driver.page_source.find("熱門") !=-1:

break

如果能找到熱門這個字,那我就認為當前是正在我操作的頁面。然後就不再進行後續遍歷了,因為遍歷的過程中是相當於已經切進來了的,如果當前確實很符合條件,就不再遍歷也不再切換到別的視窗,就在當前視窗。

確定當前操作的視窗頁面是什麼之後,接下來的事就是找元素,操作元素。和 web 自動化一樣。注意:chromedriver 要準備好。切換的時候要準備 chromedriver。

除了這一種方式之外,還有一種方式。就是純 python **,不需要搞的這麼複雜。

它是基於 python,但是它有乙個缺陷,目前只支援 python2,還沒有開放到 python3。

但是環境變數,配置乙個版本就可以了,不需要把 2.7 配上去,直接配 3.4。

環境變數執行的時候只識別乙個。如果你配置了兩個環境變數,只識別前乙個,後面那個等於沒有配置是一樣的。

在寫**的時候可以選擇用哪個版本來寫。環境變數配置常用的 3 點幾的版本,2 點幾不用配,直接使用就好了。

但是這個是 web 自動化。web 自動化怎麼做就怎麼做,重點是前面的一些固定的方式。

誰製造了通貨膨脹?

1.哈耶克認為 增發貨幣.是執政者追求個人名望的一項保證,是權力的標誌。因此,執政者本身就存在著增發貨幣的內在衝動力。而增發貨幣可直接引發通貨膨脹,這就是國家與人民的災難,可我們卻無力阻止,目前,唯一能約束他們的也許是道德,這個道德標準就是 誰製造通貨膨脹,誰就是人民的罪人!誰製造通貨膨脹,誰就是老...

誰製造了通貨膨脹?

1.哈耶克認為 增發貨幣.是執政者追求個人名望的一項保證,是權力的標誌。因此,執政者本身就存在著增發貨幣的內在衝動力。而增發貨幣可直接引發通貨膨脹,這就是國家與人民的災難,可我們卻無力阻止,目前,唯一能約束他們的也許是道德,這個道德標準就是 誰製造通貨膨脹,誰就是人民的罪人!誰製造通貨膨脹,誰就是老...

我承認我作弊了

前不久寫付費 192行pk兩萬行,我承認我作弊了。1.忽略細節 因為我沒有介入到任何細節裡面去,僅僅知道財務需求,業務需求是什麼,最大的問題解決了,其他就忽略了。大多數讓大家頭疼的問題我根本就不知道,更不要說有解決方案,但問題是,眼不見心為靜,可以專心思考最重要的是什麼。這是全新的眼睛的好處。有人說...