日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Appium base knowledge

發布時間:2025/5/22 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Appium base knowledge 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. UI Automator Viewer:在Andriod_SDK安裝路徑下,直接點uiautomatorviewer.bat即可,可以連真機和模擬器,獲取手機上各個元素的屬性。

2. ADB: Android Debug Bridge? 調試橋,是一個通用命令行工具,允許你與模擬器實例或連接的Android設備進行通信,默認端口:5037

--adb connect 127.0.0.1:62001?? #連接模擬器,第一個端口是62001,第二個是62025,第三個是62025+1,以此類推。

--adb devices? #查看設備

--adb shell? #進入linux系統的字符交互界面

--adb -s 127.0.0.1:62001 shell?? #如果開了多臺模擬器,需要用這種方式

--exit??? #退出

--adb install?? #默認安裝

--adb install | -r <apkName>? #-r 覆蓋安裝,

--adb -s 127.0.0.1:62001 install....#-s 指定 設備安裝

--adb shell??????????????????? cd /data/app/????????? ls???????? #查詢安裝的軟件

--adb uninstall <軟件名>? #默認系統會在軟件名后加-1,uninstall 的時候不要加-1才可以uninstall成功

--adb shell pm list package | grep "wadoujia" #查看設備上面安裝的應用包名

--adb push c:\test.txt /sdcard? # copy 文件到模擬器手機

--adb pull /sdcard/server.log e:\dan\? #從手機copy文件到電腦

--adb shell screencap /sdcard/screen.png? #最好用.png,jpg可能文件會損壞

--adb kill-server?? #關閉adb服務

--adb start-server #開戶adb 服務

--netstat -ano | findstr "5037"? #如果5037端口被占用,可以用這個命令查看PID,然后用下面的命令殺掉即可

--taskkill -f -pid xxx

3. Package & Activity:

怎樣獲取package & activity?

a. 啟動一個程序后,打開UI Automator Viewer,點device screenshot button即可獲得程序的各種屬性,包括package名

b. Activity,是所有程序的根本,所有程序的流程都運行在activity之中,activity可以算是開發者遇到的最頻繁,也是android當中最基本的模塊之一, 在android的程序中,activity一般代表手機屏幕的上屏,如果把手機比作一個瀏覽器,那么activity就相當于一個網頁,在activity當中可以添加一些button,checkbox等控件,可以看到activity概念和網頁的概念相當類似。

一般一個android應用是由多個activity組成的,這多個activity之間可以進行相互跳轉,例如,按下一個button 按鈕后,可能會跳轉到其他的activity,與網頁跳轉稍微有一點不一樣的是activity之間的跳轉有可能返回值.

activity的生命周期:即產生,運行, 銷毀,,但是這其中會調用許多方法 onCreate(創建),onStart(激活), onResume(恢復),onPause(暫停), onStop(停止), onDestroy(銷毀), onRestart(重啟)

--aapt (Android Asset Packaging Tool)

--aapt dump badging xxxx.apk | find "launchable-activity"

Activity頁面布局元素:

FrameLayout:

LinearLayout:

RelativeLayout:

AbsoluteLayout:

TableLayout:

TextView:

ImageView:

?4. Monkey:程序是Android系統自帶的,其啟動腳本們于Android系統 /system/bin目錄 的Monkey文件,其jar包位于Android系統的/system/framework, 用戶主要通過 adb命令來啟動Monkey的,Monkey在運行時,會根據命令行參數的配置,生成偽隨機的事件流,并在Android設備上執行對應的測試事件。同時,Monkey還會對測試系統進行監測,錄出現以下三種情況時會進行特殊處理:

a.如限定了Monkey運行在特定包上,當監測到試圖轉到其他包的操作,將對其進行阻止。

b.如應用程序崩潰或接收到任何失控異常,Monkey將記錄對應的錯誤日志,并根據命令行參數判斷是停止運行還是繼續運行。

c.如果應用程序發生了程序無響應的錯誤,Monkey將記錄對應的錯誤日志,并根據命令行參數判斷是停止還是繼續運行。

d.按照選定的不同級別的反饋信息,在Monkey中還可以看到其執行過程 報告和生成的事件。

Monkey的啟動步驟:

1.連接移動設備

2.連接成功后輸入命令:adb shell

3. 進入/system/bin: cd /system/bin/

4. 執行monkey: monkey [options] <event-count>, e.g.: monkey 2000

強制關閉monkey:

5. Monkey 事件:

  • 觸摸事件:按下并抬起的操作,可通過 --pct-touch參數來配置其事件的百分比
  • 手勢事件:按下隨機移動,抬起的操作,可通過 --pct-motion 配置
  • 二指縮放事件:
  • 軌跡事件
  • 屏幕旋轉事件
  • 基本導航事件
  • 主要導航事件
  • 系統按鍵事件
  • 啟動Activity事件
  • 鍵盤事件
  • 其他類型事件

6. Monkey參數:

a.常規類參數:包括幫助參數 monkey -h 和 日志信息參數 monkey -v -v -v 200 # 一個v是0級,兩個v是1級,三個v是2級, 最詳細

b.事件類參數:是對隨機事件進行調控,從而使其遵照設定運行,如設置各種事件的百分比,設置事件生成的使用的種子值等,頻率參數主要限制事件執行的時間間隔。

--monkey -f /mnt/sdcard/test1? #執行指定腳本

--monkey -s 8888 200? # -s? 可以重復執行之前的偽隨機操作, 本身每次執行偽隨機事件操作也會默認生成一個seed種,也可以自己設定

--monkey --throttle 3000 5? #設置間隔,如果你希望在每一個指令之間加上固定的間隔時間,可以用--throttle,后面接時間,單位為ms

--monkey -v -v --pct-touch 30 200 ? # 調整觸摸事件百分比, 可以通過 --pct-touch參數,后面加百分比

--monkey -v -v --pct-motion 40 --pct-touch 20 200? #調整手勢事件百分比用--pct-motion,后面加百分比

--monkey --pct-appswitch?? #調整應用啟動事件的百分比, 用--pct-appswtich ,后面加百分比

--monkey --pct-rotation? #調整屏幕旋轉事件百分比, 后面加百分比即可。

c.約束類參數:

--monkey -p <包名> -p <包名>? #-p后面接一個或多個包名

--monkey -c <main-category> <event-count>? #activity 約束, 測試一個或多個類別

d. 調試類參數

--monkey --ignore-crashes <event-count>? #如果希望monkey在應用程序崩潰后繼續發送事件,就用這個命令,如果不設置,遇到上述情況自動停止

?實例:考研幫:

7. Appium 安裝:

a. 先安裝node.js (用node -v, npm -v查看是否安裝成功)

b. 安裝appium:可以用國內的源: npm install -g cnpm --registry=https://registry.npm.taobao.org, 然后用cnpm install -g appium? 安裝最新版本(cnpm install appium@1.7.2 -g安裝指定版本), 然后后where appium查看安裝路徑, appium -v查看版本,輸入appium執行.

c. 安裝python

d. 安裝appium desktop ,下載安裝文件安裝即可

e.安裝appium python client: python3 -m pip install Appium-Python-Client (安裝完后在python里執行from appium import webdriver,如果沒有出錯,代表安裝成功)

f.JDK安裝

g.Android sdk 安裝

h.安裝appium-doctor:? cnpm install appium-doctor -g, 安裝完后執行appium-doctor 可以檢查appium環境是否有問題

?

d.

?

轉載于:https://www.cnblogs.com/tongbaomami/p/9155970.html

總結

以上是生活随笔為你收集整理的Appium base knowledge的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。