微信小程序的自動化測試框架


微信小程序的自動化測試框架

微信發布了小程序的自動化測試框架Minium,提供了多種運行驗證方式,其特點:

  • 支持一套腳本,iOS & Android & 模擬器,三端運行
  • 提供豐富的頁面跳轉方式,看不到也能去得到
  • 可以獲取和設置小程序頁面數據,讓測試不止點點點
  • 可以直接觸發小程序元素綁定事件
  • 支持往 AppSerive 注入代碼片段
  • 可以調用部分 wx 對象上的接口

官方地址如下:https://git.weixin.qq.com/minitest/minium-doc/tree/master

minium 是為小程序專門開發的自動化框架, 提供了 Python 和 JavaScript 版本。使用 minium 可以進行小程序 UI 自動化測試, 但是 minium 的功能不止於僅僅是 UI 自動化, 甚至可以使用 minium 來進行函數的 mock, 可以直接跳轉到小程序某個頁面並設置頁面數據, 做針對性的全面測試, 這些都得益於我們開放了部分小程序 API 的能力。除此之外,小程序有部分組件使用了系統原生的組件,對於這部分的組件,我們也基於 uiautomator 和 wda 做了補充。

環境依賴

文檔使用

Minium的文檔是采用Nodejs編寫的,因此想看文檔還需要安裝NodeJs的環境,如果你不知道怎么安裝請自行查找。文檔的安裝:

npm i docsify-cli -g

然后checkout文檔項目:

git clone https://git.weixin.qq.com/minitest/minium-doc

安裝依賴:

cd minium-doc npm install

本地部署:

docsify serve .

然后通過瀏覽器訪問 http://localhost:3000 即可以查看了。

框架依賴運行環境部署

首先你要先下載框架壓縮包:https://git.weixin.qq.com/minitest/minium-doc/raw/master/minium/Python/dist/minium-0.0.2.zip

接下來,你要打開微信開發者工具的安全模式 

然后安裝Minium:

pip3 install minium-0.0.2.zip

使用

首先你要通過命令行啟動開發者工具提供了命令行

命令行 通過命令行調用安裝完成的工具可執行文件,完成登錄、預覽、上傳、自動化測試等操作。調用返回碼為 0 時代表正常,為 -1 時錯誤。

命令行工具所在位置:

macOS: <安裝路徑>/Contents/MacOS/cli
Windows: <安裝路徑>/cli.bat

命令行啟動工具 -o, --open [projectpath]: 打開工具,如果不帶 projectpath,只是打開工具。如果帶 project path,則打開路徑中的項目,每次執行都會自動編譯刷新,並且自動打開模擬器和調試器。projectpath 不能是相對路徑。項目路徑中必須含正確格式的 project.config.json 且其中有 appid 和 projectname 字段。 示例:

打開工具

cli -o

打開路徑 /Users/username/demo 下的項目

cli -o /Users/username/demo

輸入如下命令:

path/to/cli --auto /miniprogram/project/path --auto-port 9420 # path/to/cli 是命令行工具所在位置: # macOS: <安裝路徑>/Contents/MacOS/cli # Windows: <安裝路徑>/cli.bat windows版本在安裝之后默認會把cli加入到系統路徑,可以先測試cli命令是否可用,如果可用,path/to/cli可以直接用cli替換 # /miniprogram/project/path 是小程序工程的路徑( Windows下面用 \\ 代替 \ )

特別說明:

  • 1、這里的--auto-port請填寫 9420,不是開發者工具安全模式的端口
  • 2、請確保開發者工具登陸的微信號具備被測小程序的開發者權限
  • 3、如果沒有Open project with automation enabled success的輸出,否則請檢查IDE版本(開發者工具調試基礎庫版本 >= 2.7.3),或者檢查命令行參數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM