日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是

系統(tǒng) 2062 0

簡介

  今天由宏哥給小伙伴們來介紹猴哥的混血弟弟=Monkey。Monkey 是Android SDK提供的一個(gè)命令行工具, 可以簡單,方便地運(yùn)行在任何版本的Android模擬器和實(shí)體設(shè)備上。?Monkey會(huì)發(fā)送偽隨機(jī)的用戶事件流,適合對(duì)app做壓力測試。

中文名:猴子

英文名:Monkey

出身年月:不詳

職業(yè):自動(dòng)化測試工具

常住地址:花果山水簾洞1號(hào)

1、Monkey簡介

  在 Android的官方自動(dòng)化測試領(lǐng)域有一只非常著名的“猴子”叫Monkey,這只“猴子”一旦啟動(dòng),就會(huì)讓被測的Android應(yīng)用程序像猴子一樣活蹦亂跳,到處亂跑。人們常用這只“猴子”來對(duì)被測程序進(jìn)行壓力測試,檢查和評(píng)估被測程序的穩(wěn)定性。

Android官方對(duì)這只“猴子”的描述是這樣的:

  The Monkey is a program that runs on your emulator or device and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events. You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner.

  Monkey是一個(gè)程序,運(yùn)行在您的模擬器或設(shè)備上,并生成偽隨機(jī)的用戶事件流,如點(diǎn)擊,觸摸或手勢,以及一些系統(tǒng)級(jí)事件。 您可以使用Monkey以隨機(jī)但可重復(fù)的方式對(duì)您正在開發(fā)的應(yīng)用程序進(jìn)行壓力測試。

  monkey官方文檔: http://www.android-doc.com/tools/help/monkey.html

2、環(huán)境搭建

  安裝Android SDK?并配置環(huán)境變量

3、什么是Monkey

  顧名思義,Monkey就是猴子,? Monkey測試,就像一只猴子,?在電腦面前,亂敲鍵盤在測試。? 猴子什么都不懂, 只知道亂敲

  通過Monkey程序模擬用戶觸摸屏幕、滑動(dòng)Trackball、 按鍵等操作來對(duì)設(shè)備上的程序進(jìn)行壓力測試,檢測程序多久的時(shí)間會(huì)發(fā)生異常

4、Monkey 用來做什么

  Monkey 主要用于Android 的壓力測試? 自動(dòng)的一個(gè)壓力測試小工具,?主要目的就是為了測試app?是否會(huì)Crash.

5、Monkey程序介紹

(1) Monkey程序由Android系統(tǒng)自帶,使用Java詫言寫成,在Android文件系統(tǒng)中的存放路徑是: /system/framework/monkey.jar;? ?
(2) Monkey.jar程序是由一個(gè)名為“monkey”的Shell腳本來啟動(dòng)執(zhí)行,shell腳本在Android文件系統(tǒng)中 的存放路徑是:/system/bin/monkey; ?
(3)Monkey 命令啟動(dòng)方式:?? ?
????????? a)可以通過PC機(jī)CMD窗口中執(zhí)行: adb shell monkey {+命令參數(shù)}來進(jìn)行Monkey測試??????????

b)在PC上adb shell 進(jìn)入Android系統(tǒng),通過執(zhí)行 monkey {+命令參數(shù)} 來進(jìn)行Monkey 測試??????????

c )? 在Android機(jī)或者模擬器上直接執(zhí)行monkey 命令,可以在Android機(jī)上安裝Android終端模擬器 ?

6、Monkey 架構(gòu)

  Monkey 運(yùn)行在設(shè)備或模擬器上面,可以脫離PC運(yùn)行(普遍做法是將monkey作為一個(gè)像待測應(yīng)用發(fā)送 隨機(jī)按鍵消息的測試工具。驗(yàn)證待測應(yīng)用在這些隨機(jī)性的輸入面前是否會(huì)閃退或者崩潰)

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第1張圖片

7、Monkey弱點(diǎn)

  Monkey雖然可以根據(jù)一個(gè)指定的命令腳本發(fā)送按鍵消息,但其丌支持條件判斷,也丌支持讀取待測界 面的信息來執(zhí)行驗(yàn)證操作。

8、Moneky 路徑

  Monkey程序是Android系統(tǒng)自帶的,其啟動(dòng)腳本是位于Android系統(tǒng)的/system/bin目錄的Monkey文件,其jar包是位于Android系統(tǒng)的/system/framework目錄的Monkey.jar文件。用戶主要是通過adb命令來啟動(dòng)Monkey的,Monkey在運(yùn)行時(shí),會(huì)根據(jù)命令行參數(shù)的配置,生成偽隨機(jī)的事件流,并在Android設(shè)備上執(zhí)行對(duì)應(yīng)的測試事件。同時(shí),Monkey還會(huì)對(duì)測試系統(tǒng)進(jìn)行監(jiān)測,當(dāng)出現(xiàn)以下三種情況時(shí)會(huì)進(jìn)行特殊處理:

  • 如限定了 Monkey運(yùn)行在特定包上,當(dāng)監(jiān)測到試圖轉(zhuǎn)到其他包的操作,將對(duì)其進(jìn)行阻止。
  • 如應(yīng)用程序崩潰或接收到任何失控異常, Monkey將記錄對(duì)應(yīng)的錯(cuò)誤日志,并根據(jù)命令行參數(shù)判斷是停止運(yùn)行還是繼續(xù)運(yùn)行。
  • 如果應(yīng)用程序發(fā)生了程序無響應(yīng)( application not responding)的錯(cuò)誤,Monkey將記錄對(duì)應(yīng)的錯(cuò)誤日志,并根據(jù)命令行參數(shù)判斷是停止運(yùn)行還是繼續(xù)運(yùn)行。
  • 按照選定的不同級(jí)別的反饋信息,在 Monkey中還可以看到其執(zhí)行過程報(bào)告和生成的事件。

9、Monkey啟動(dòng)步驟

1、檢查設(shè)備連接狀態(tài)(以夜神模擬器為例)

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第2張圖片

2、從上圖看出,設(shè)備未連接,連接移動(dòng)設(shè)備

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第3張圖片

3、再次查看設(shè)備連接狀態(tài)

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第4張圖片

4、連接成功后輸入命令:adb? shell

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第5張圖片

5、進(jìn)入到指定目錄,命令: cd ?/system/bin

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第6張圖片

6、輸入 monkey命令看到如下提示則說明啟動(dòng)成功。

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第7張圖片

10、強(qiáng)制關(guān)閉 monkey

1、adb shell ps 查看全部在運(yùn)行的進(jìn)程

2、查找出 com.android.commands.monkey 進(jìn)程PID

3、adb shell kill pid 殺掉monkey進(jìn)程

11、monkey 命令

monkey命令格式如下:

$ adb shell ?monkey [options]

  • [options] ? 是指 monkey可傳入的參數(shù),是可選項(xiàng)(如果不指定options,Monkey將以無反饋模式啟動(dòng),并把事件任意發(fā)送到安裝在目標(biāo)環(huán)境中的全部包)

? 是指隨機(jī)發(fā)送事件數(shù)。如:輸入 100就是執(zhí)行100個(gè)偽隨機(jī)事件,為必選項(xiàng)。

12、小結(jié)

?   好了,Monkey簡介暫且到這里,下一篇計(jì)劃介紹分享Monkey事件!!!

您的肯定就是我進(jìn)步的動(dòng)力。 如果你感覺還不錯(cuò),就請鼓勵(lì)一下吧!記得點(diǎn)波? 推薦 ?哦!!!
Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第8張圖片

個(gè)人公眾號(hào)

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第9張圖片

微信群

Appium+python自動(dòng)化(十七)- 你難道是猴哥失散多年的混血弟弟還是妹妹???- Monkey簡介之開山篇(超詳解)_第10張圖片


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 万载县| 闸北区| 巴林左旗| 锡林郭勒盟| 梁平县| 普格县| 永济市| 凤台县| 凌海市| 留坝县| 鹤峰县| 霍山县| 酉阳| 龙川县| 灵璧县| 山丹县| 蒙山县| 宽甸| 黔江区| 施甸县| 阿城市| 宿松县| 东宁县| 新民市| 梁山县| 西充县| 兴城市| 吉林省| 唐山市| 依兰县| 麦盖提县| 蒲城县| 清远市| 玉山县| 铜梁县| 德庆县| 安仁县| 东乌珠穆沁旗| 双辽市| 凤凰县| 鄂托克旗|