AutoMagic自動化測試平台簡介


PS:給想做自動化平台同學一點思路。

  AutoMagic 是一個基於WebUI的自動化管理平台。為什么叫AutoMagic呢?因為自動化(Automation)在執行起來的時候是一個很神奇的事情,它可以無人值守的模擬人的操作,就像魔術(Magic)一樣。 所以我給她取名叫AutoMagic。

    AutoMagic從其工作分工應該分兩部分:

  Web管理平台,它是基於Python Django框架+Mysql開發,主要用來管理自動化測試用例和設計自動化測試場景、存放界面元素標識,通過界面錄入存放在數據庫中進行管理,它是一個純粹基於Selenium關鍵字自動化原件管理平台。

  客戶端執行腳本(seleniumkeyword ),AutoMagic的執行效果展示主要靠它來體現,它的執行依附於web平台存儲的用例和場景數據,seleniumkeyword可以不需要部署在服務器端,只要它能夠連接到服務器端的數據庫,部署在任何平台都可以執行。(這樣也方便我們做分布式執行測試用例)

安裝運行環境

在安裝python、selenium、 mysqldb 的環境下運行,其它python依賴包根據關鍵詞插件要求進行安裝

目錄腳本說明

TestSuite.py 測試用例執行腳本引擎是 ,它可以通過參數實現不同的執行方式

-t [taskid] 指定執行的AutoMagic任務

-u [userid] 指定執行腳本的用戶

-r [runid] 執行測試用例腳本要同步的TestRailRunid,它只有在執行 -t 參數時才會生效。

-c [caseid] 指定要執行的單個用例的編號

-p [projectid] 指定要執行的項目id,會依次執行項目中所有模塊和用例狀態是啟用的所有用例

-b [browser] 指定執行用例過程所使用瀏覽器,默認使用chrome瀏覽器,也可在執行case過程中通過openbrowser關鍵字重置

Exp:

python TestSuite.py -t 1 -u tsbc -r 1433 -b chrome

Base.py 是我們關鍵字維護腳本,class Action中重定義了python selenium的一些方法,其它部分均為自定義關鍵字。

自定義關鍵字示例:

@Action.add_action('InputText') def action_InputText(action_object, step_desc, value, loc): """  文本框輸入內容  :param action_object:  :param step_desc:  :param value: text  :param loc:  :return:  """ print loc, value action_object.send_keys(loc, value)

AddCase.py 同步用例到TestRail到腳本

-t [taskid] 指定執行同步的AutoMagic任務

-u [userid] 指定執行腳本的用戶

-s [sctionid] 執行同步case到TestRail的那個用例集(section_id代表所在用例集)

HTMLTestRunner.py 生成報告的腳本文件

RestApiUtil.py、RestApiUtil.py 是發包MW模擬安全事件和發送pcap發包接口

testrail.py TestRail的接口API

result目錄為報告接口目錄

data目錄執行上傳附件關鍵字時,附件存放目錄

nwjs-sdk-v0.19.3-win-x64 是node webkit應用chromedriver驅動

目錄結構:

生成測試報告效果(Fail截圖版本):

生成測試報告效果(Case視頻回放版本):視頻回放報告生成當前只支持在Linux環境下運行

 


免責聲明!

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



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