操作事件簡介
Monkey所執行的隨機事件流中包含11大事件,分別是觸摸事件、手勢事件、二指縮放事件、軌跡事件、屏幕旋轉事件、基本導航事件、主要導航事件、系統按鍵事件、啟動Activity事件、鍵盤事件、其他類型事件。Monkey通過這11大事件來模擬用戶的常規操作,對手機App進行穩定性測試。下面讓我們來詳細了解這11大事件。
1、觸摸事件
觸摸事件是指在屏幕某處按下并抬起的操作,可通過 --pct-touch參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到。 該事件由一組Touch(ACTION_DOWN)和Touch(ACTION_UP)事件組成,在手機上看到實際操作類似于點擊。
2、手勢事件
手勢事件是指在屏幕某處的按下、隨機移動、抬起的操作,即直線滑動操作。可通過 --pct-motion參數來配置其事件百分比。
該事件是由一個 ACTION_DOWN事件、一系列ACTION_MOVE事件和一個ACTION_UP事件組成的,在手機上看到的實際操作是一個沒有拐彎的直線滑動操作。
3、二指縮放事件
二指縮放事件是指在屏幕上的兩處同時按下,并同時移動,最后同時抬起的操作,即智能機上的放大縮小手勢操作。可通過 --pct-pinchzoom參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到:
該事件起始是一個 ACTION_DOWN事件和一個ACTION_POINTER_DOWN事件,即模擬兩個手指同時點下;中間是一系列的ACTION_MOVE事件,即兩個手指同時在屏幕上直線滑動;結束是由一個ACTION_POINTER_UP事件和一個ACTION_UP事件組成的,即兩個手指同時放開。
4、軌跡事件
軌跡事件是由一個或多個隨機的移動組成的,有時會伴隨著點擊。很早之前的 Android手機帶有軌跡球,這個事件就是模擬的軌跡球的操作。現在的手機幾乎都沒有軌跡球,但軌跡球事件中包含曲線滑動操作,如果被測程序需要曲線滑動時可以選用此參數。可通過--pct-trackball參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到:
該事件是由一系列的 Trackball(ACTION_MOVE)事件組成的,觀察手機上的操作,即為一系列的曲線滑動操作。
5、屏幕旋轉事件
屏幕旋轉事件是一個隱藏事件,在 Android官方文檔中并沒有記錄這個事件。它其實是模擬的Android手機的橫屏和豎屏切換。可通過--pct-rotation參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 該事件由一個rotation事件組成,其中degree表示的是旋轉方向,順時針旋轉,0表示旋轉90度的方向,1表示旋轉180度的方向,2表示旋轉270度的方向,3表示旋轉360度的方向。在執行過程中,可以看到手機屏幕在橫豎屏之間不斷地切換。
6、基本導航事件
基本導航事件是指點擊方向輸入設備的上、下、左、右按鍵的操作,現在手機上很少有上、下、左、右按鍵,這種事件一般用得比較少。可通過 --pct-nav參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到:
該事件是由一個 Key(ACTION_DOWN)和一個Key(ACTION_UP)組成的,點擊的就是上、下、左、右四個方向按鍵。
7、主要導航事件
主要導航事件是指點擊 “主要導航”按鍵的操作,這些按鍵通常會導致UI界面中的動作,如鍵盤的中間鍵、回退按鍵、菜單按鍵。可通過--pct-majornav參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 該事件是由一個Key(ACTION_DOWN)和一個Key(ACTION_UP)組成的,點擊的按鍵就是中間鍵和菜單鍵。
8、系統按鍵事件
系統按鍵事件是指點擊系統保留使用的按鍵的操作,如點擊 Home鍵、返回鍵、音量調節鍵等。可通過--pct-syskeys參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 該事件是由一個Key(ACTION_DOWN)和一個Key(ACTION_UP)組成的,點擊的就是上面說到的幾個系統按鍵。
9、啟動Activity事件
啟動 Activity事件是指在手機上啟動一個Activity的操作。在隨機的時間間隔中,Monkey將執行一個startActivity()方法,作為最大限度上覆蓋被測包中全部Activity的一種方法。可通過--pct-appswitch參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 該事件是由一個Switch操作組成的,從手機上看,上面的操作實際是打開了com.android.settings這個應用的一個com.android.settings.Settings的Activity界面。
10、鍵盤事件
鍵盤事件主要是一些與鍵盤相關的操作。比如點擊輸入框、鍵盤彈起、點擊輸入框以外區域、鍵盤收回等。可通過 --pct-flip參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 如日志所示,這里主要是鍵盤的打開和關閉操作。
11、其他類型事件
其他類型事件包括了除前面提到的 10種事件外其他所有的事件,如按鍵、其他不常用的設備上的按鈕等。可通過--pct-anyevent參數來配置其事件百分比。從Monkey執行該事件對外輸出的日志可以看到: [代碼] 該事件是由一個Key(ACTION_DOWN)和一個Key(ACTION_UP)組成的,點擊的按鍵就是其他的一些系統按鍵,如字母按鍵、數字按鍵等。因為現在手機很少帶字母按鍵或數字按鍵,所以這個事件一般使用得比較少。
12、小結
好了,Monkey事件暫且到這里,下一篇計劃介紹分享Monkey參數!!!
您的肯定就是我進步的動力。
如果你感覺還不錯,就請鼓勵一下吧!記得點波
?
推薦
?哦!!!(點擊右邊的小球即可)
個人公眾號
微信群
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
