AutoTest簡介


   

        前言(僅看介紹本身的可以略過)

       在離職后的一段時間里,個人總結了過去幾年工作的心得,結合以往的工作經驗。重新思考並重構了前些年做的一些東西(主要是測試相關),產生了設計AutoTest這樣的一個測試工具/系統的想法,當然其實這樣的想法一直都有自己也曾試圖慢慢去完善及實現,不過工作的原因一直沒有太大進展。而離職后自己並沒有忙於找工作,也使得自己有時間去實現自己的想法。

       另外有篇關於AutoTest的系統設計的簡單介紹 【一個基於.NET平台的自動化/壓力測試系統設計簡述(可獨立運行,提供源碼)

AutoTest簡介

  • AutoTest被設計為一個基於協議的支持分布式部署測試系統/工具。

AutoTest支持自定義協議的定制,除支持基礎協議外,可根據公司或項目的特殊要求定制所需要的通信協議(定制過程僅需要修改AutoTest執行庫文件,定制可參見【如何添加一種新Case協議】)

 

  • AutoTest以Runner為單個執行體,runner的行為由case文件(腳本)文件決定,工具本身可以加載任意數目runner(可以選擇加載不同case文件),並且支持runner的並行執行,AutoTest同時支持分布式部署,您可以將case文件即測試任務部署到遠程主機,AutoTest可以連接這些遠程主機,並控制這些遠程主機上runner以獲得更高性能。

 

  • AutoTest的case文件(腳本)是一種基於xml並且完全符合xml規范的簡單描述文件,該文件描述case的執行方式,如執行需要的數據,斷言的處理,遇到錯誤的行為,及運行次數,延時等等您可能需要限定的內容。case文件包含一個執行器描述(提供您協議可能需要的基礎數據,比如對於串口的串口號,波特率等,對於telnet的ip,登陸名密碼等···),還有任意數量的project節點,project中包含單個case體或循環體

 

  

 

以上為主runner運行時界面,主runner中每個case執行時都會顯示獨立的執行過程,並會在界面上有明顯反饋動作,執行完成后,您可以選擇輸出測試報告,測試報告以html的形式呈現,報告中會包含執行細節。

 

 

 

 

 上圖為多runner同時執行的界面,這里可以構建或虛擬許多不同的用戶行為對測試對象進行測試。您可以指定任意runner加載任意的case文件,然后選擇任意的runner進行執行或者一起執行

 

 

 

上圖為AutoTest連接遠程主機進行測試,要連接遠程主機您需要先在遠程主機上運行AutoTest的分布式部署程序(上圖中的3台遠程測試主機實際上運行在一台主機上)

使用分布式測試時請先在防火牆中允許您指定的服務端口(或關閉防火牆)

 

  • 關於Case文件

當前case文件支持簡單的參數化,您可以預定義一些您需要的需要且可能隨時改變的數據設置為可參數化的數據,這些數據可以在case文件中如變量一樣被使用,也可以在運行中被運行結果所替代或新增。(跟其類似的還支持簡單的靜態數據如隨機數,系統時間等等)

支持的斷言包括【default/is/not/like/endwith/startwith/contain/uncontain】

斷言支持多種動作,如達/未達到條件時,跳轉(goto)到指定case,或者失敗后進行重試,或進行語音提示報警

對於多條cace組成的業務可以選擇性進行循環(循環中支持任意次的循環嵌套)

更多關於Case文件的內容見【CASE 文件 范例


免責聲明!

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



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