自動遍歷器 NoSmoke 發布公測
目前在macaca 提供的基礎能力上研發出了一套多端深度遍歷爬蟲工具. 希望可以最大化減少UI 測試腳本的編寫
涵蓋以下功能點:
支持iOS, Android,PC-Web三個平台的自動化測試
同時可以通過以下三種層級方式, 根據使用者自身場景滿足不同程度的定製化需求:
2.1YML 配置文件: 普通內容定製
2.2鉤子:個別流程,攔截定製
2.3平台.js 文件覆蓋: 按需選擇流程介面, 覆蓋定製
Mokey 的測試過程與macaca-reporter聯通,測試數據由macaca-report 報表分析器統一沉澱並進行可視化展示.
(目前PC-Web , 以及 Reporter 對爬蟲的支持還在調試當中)
項目源碼地址: https://github.com/macacajs/NoSmoke
macaca-reporter 源碼地址: https://github.com/macacajs/macaca-reporter
目前項目正在收尾階段, 所以先發一個原型出來,希望收集一下大家的意見,發布版本會根據大家的意見進行調優.
1.運行效果
1.1 iOS
GIF/1K
1.2 Android
訪問原文查看
1.3 PC-Web
訪問原文查看
2. 啟動指令:
項目依賴:
請確保你安裝了macaca 系列的各個開源庫:
2.1 配置文件
對於新手,建議直接使用NoSmoke 項目中public 路徑下配置好的yml 文件, 裡面標註了iOS/Android/Web-PC 三種爬取對象的簡易配置, 可以直接跑起來
2.2 命令行
NoSmoke 根目錄執行
新開命令行窗口, 在NoSmoke 根目錄執行
3. 定製化說明
3.1 為了大家更好理解NoSmoke 的實現原理,提供一份詳細爬行流程圖,.
訪問原文查看
3.2 YML 配置文件選項詳解:
3.3 鉤子定製:
再精密設計的深度遍歷演算法對於不同的UI 界面設計, 也不能完全保證能夠cover 大部分的遍歷場景,因此通過鉤子的形式給使用者提供不干預流程的前提下,定製遍歷可能性
用戶可以通過定製 /public/hooks.js 中的各個函數 對默認行為進行定製:
3.4 函數覆蓋:
用戶可以參考crawler.js 延伸的 android.js, ios.js, web.js 對 crawler 中特定行為進行覆蓋定製, 比如說 ios.js 中對個別介面針對iOS平台做了定製:
※pipeline:pipeline 使用之快速入門
※腦洞小開-selenium,動態運行日常調試代碼
TAG:TesterHome |