国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > Airtest錄制、運行移動端應用腳本

Airtest錄制、運行移動端應用腳本

來源:千鋒教育
發布人:qyf
時間: 2022-06-02 18:07:00 1654164420

  Airtest是由網易游戲推出的UI自動化測試解決方案,是一個跨平臺的、 基于圖像識別 的UI自動化測試框架,適用于游戲和App,支持平臺有Windows、Android和iOS。

  并且提供了基于UI控件識別的Poco框架,目前也支持Android原生、iOS原生、Unity3D、cocos2dx、UE4和Egret等平臺。

  為了讓測試人員更好上手,網易還貼心地提供了AirtestIDE工具,內置了Airtest和Poco的相關插件功能,能夠使用它快速簡單地編寫 Airtest 和 Poco 代碼。

  如果你是一個自動化新手同學,建議借助AirtestIDE編寫/運行自動化腳本;但是當你能夠熟練使用Airtest和Poco框架之后,那就使用python語言自由發會編寫自動化腳本吧。

  Allen老師今天就帶著大家來做一個簡單的案例,帶大家一起體驗airtest帶給我自動化測試的方便體驗。

  一、案例說明

  啟動手機淘寶app

  打開淘寶首頁的今日爆款

  選擇爆款首頁中的第一個商品

  商品頁復制商品的淘口令

  關閉淘寶app

  啟動手機淘特app

  等待彈出淘口令

  點擊商品鏈接

  關閉淘特app

  二、使用airtestide錄制、運行腳本

  1、啟動airtest并創建airtest項目

圖片56

  2、連接手機設備

  若連接android手機設備,需要本地安裝adb軟件,手機中開啟開發者選項、usb調試,并連接手機到pc電腦。

  在airtest的設備窗口刷新adb,則會顯示手機設備,點擊connect按鈕。

圖片57

  3、開發業務腳本

  我們采用airtest的poco框架,識別頁面app的頁面元素并進行定位、操作。

圖片58

  Poco輔助助手中定位到app的元素,直接雙擊該元素即可生成poco語法。

  定義poco對象:poco = AndroidUiautomationPoco(force_restart=False)

  如點擊商品分享按鈕:poco("com.taobao.taobao:id/uik_public_menu_action_icon").click()

  在代碼編寫中還會用到一些常用的語法:

  連接手機設備:android_device = connect_device('android://127.0.0.1:5037/28240ad5')

  其中28240ad5為設備序列號,可以通過adb devices獲取

  啟動app應用:start_app('com.taobao.taobao')

  包名可以通過:adb shell dumpsys window | findstr mCurrentFocus獲取

  關閉app應用:stop_app('com.taobao.taobao')

  強制等待:sleep(10.0)

  點擊設備上固定的坐標:touch((500.1000))

  根據頁面文本點擊元素:poco(text="今日爆款").click()

  下面是完整的實現上述業務的腳本:

  # -*- encoding=utf8 -*-

  __author__ = "allen"

  from airtest.core.api import *

  from airtest.cli.parser import cli_setup

  from poco.drivers.android.uiautomation import AndroidUiautomationPoco

  auto_setup(__file__, logdir=True, devices=["android://127.0.0.1:5037/28240ad5?cap_method=MINICAP&&ori_method=MINICAPORI&&touch_method=MINITOUCH",])

  android_device = connect_device('android://127.0.0.1:5037/28240ad5')

  # script content

  print("start...")

  start_app('com.taobao.taobao')

  #后續的元素定位都是基于這個組件

  # poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

  poco = AndroidUiautomationPoco(force_restart=False)

  poco(text="今日爆款").click()

  # 商品是變化的

  touch((500.1000))

  sleep(10.0)

  poco("com.taobao.taobao:id/uik_public_menu_action_icon").click()

  poco("android.widget.FrameLayout").offspring("com.taobao.taobao:id/uik_fl_container_share").child("com.taobao.taobao:id/uik_public_menu_content_1")[1].child("android.widget.LinearLayout").child("android.widget.FrameLayout").child("android.widget.FrameLayout")[1].child("android.widget.FrameLayout").click()

  # 關閉淘寶進,打開淘特

  stop_app('com.taobao.taobao')

  start_app('com.taobao.litetao')

  # 等待口令打開

  sleep(10.0)

  # 點擊查看詳情

  poco("com.taobao.litetao:id/tpd_item_action").click()

  sleep(10.0)

  stop_app('com.taobao.litetao')

  print("end...")

  3、保存腳本

  在airtestide中文件菜單,點擊保存文件到本地磁盤目錄。

圖片59

  4、運行腳本

  點擊開始運行按鈕,既可以啟動運行。

圖片60

  運行結果見視頻:《airtest腳本演示.mp4》

  5、查看運行報告

  在airtestide中運行菜單下,點擊打開運行目錄,選擇log目錄,即可展示報告。

圖片61

  三、使用IDE的運行腳本命令

  我們使用AirtestIDE自帶的環境跑腳本時,在log查看窗的頂部會刷出運行當前腳本的一條命令,我們可以直接復制該命令去命令行終端運行:

圖片62

  直接復制此條命令運行腳本,實際上我們還是利用了AirtestIDE自帶的環境跑腳本,而無需額外部署本地Python環境 。

  切換到airtest安裝目錄下,啟動cmd窗口,運行上面的命令(復制的),結果與再AirtestIDE中運行效果一致。

圖片63

  四、使用python環境運行air腳本

  如果直接使用本地python環境進行,要求本地環境在python3以上,python3.9以內,本文采用python3.8環境。

圖片64

  然后就在這里Python環境里面,像安裝其它Python第三方庫一樣,安裝我們的自動化測試框架。

  # 安裝Airtest框架

  pip3 install airtest

  # 安裝Poco框架;編寫了Poco語句就需要安裝

  pip3 install pocoui

  # 安裝airtest-selenium框架;編寫了airtest-selenium語句就需要安裝

  pip3 install airtest-selenium

  如果有出現報錯或者超時,要確定python版本或者更換python鏡像源,建議使用清華源或者其它國內源安裝.

  pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple airtest

  成功安裝之后,我們可以使用pip list命令,查看我們的安裝情況及框架版本信息:

圖片65

  作者嘗試上面的三個庫的版本是可用的,如果直接使用上述安裝不可用,可能是更新的新版本的兼容性問題,可以嘗試使用指定版本安裝,切記poco與pocoui,兩者會產生沖突。

  pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple airtest==1.1.11

  配置好環境之后,切換到保存的air腳本目錄下,找到taobao.py文件,連接收手機設備,執行該文件即可。

圖片66

  執行結果與上面兩種執行效果一致。

  更多關于軟件測試培訓的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT