ZenTaoATF 1.0 發布,禪道自動化測試框架

2021-01-18 開源中國

大家好,我們非常自豪的向大家推出我們禪道開發團隊開發的自動化測試框架——ZenTaoATF(zentao auto testing framework)。ZenTaoATF只有一個腳本文件,可以支持各種腳本語言編寫的自動化測試腳本,語法簡單,使用靈活,後續會和禪道項目管理軟體進行綁定和集成。

它的基本工作原理如下:

首先,你需要寫一個測試腳本來實現你正常的測試邏輯。現在支持php, python, ruby, lua, tcl, bash。
這個測試腳本裡面按照自己所測程序的業務邏輯編寫,比如連結資料庫,查詢某一個記錄等等。

然後通過注釋的方式為這個測試腳本寫上基本的用例信息:標題,步驟和預期結果,採用的是yaml語法格式。
<<<TC
title: helloworld.
expect: helloworld.
TC

然後執行zt腳本,zt腳本會掃描當前目錄下面的帶有用例標誌的腳本,然後調用執行,得出每個腳本的實際輸出,然後和用例裡面事先記錄好的預期結果進行比對,如果相匹配,則成功,如果失敗,則計算diff信息。

相比較於其他的自動化測試框架或者單元測試框架來將,ZenTaoATF的主要特點如下: 

1. 簡單
1.1 程序簡單
整個自動化測試框架只有一個zt文件,使用php開發,安裝和運行都非常的方便。

1.2 語法簡單
ZenTaoATF的語法只有簡單的標題,步驟,預期結果,採用yaml格式,撰寫比較方便,可讀性也很好。

2. 跨語言
ZenTaoATF框架本身是使用PHP開發的,但它支持各種各樣的腳本語言,比如python, ruby, lua, tcl, bash, bat等。

3. 跨平臺
ZenTaoATF可以運行在各個平臺下面。(現在暫時只支持linux,windows1.1版本加入)

4. 和禪道項目管理軟體集成

後續版本我們會和禪道開源項目管理軟體進行集成和綁定,腳本和用例可以做到有機的結合。

下載地址:http://www.zentao.net/article-view-79773.html

如何安裝:

1. 現在zentaoatf暫時只支持linux和bsd系統,請先安裝好php的運行環境。

2. 下載zentaoatf包,將其解壓縮到一個目錄。

3. 解壓縮之後,有一個zt的php腳本。使用命令chmod a+rx zt 給它增加可執行權限。

4. 為了後面方便使用,可以考慮將zt這個腳本拷貝到/usr/local/bin目錄下面。

 

如何運行:


1. 下載zentaoatf包之後,裡面有兩個目錄,一個是基本的語法,一個是各種腳本語言的格式。

2. 可以在這個目錄下面執行執行 zt,就可以運行自動化測試腳本。執行的效果如下:

 

基本語法:

 

1. 在腳本裡面通過注釋的形式來寫腳本的標題和預期步驟:

1

2

3

4

5

<?php

<<<TC

title: php hello world.

expect: hello world.

TC;

其他語言的格式,請參考langs下面的腳本。

 

2. expect可以帶有格式串

1

2

3

4

5

6

<<<TC

title: with format chars.

expect: hello world %i.

TC;

 

echo'hello world '. time() .'.';

具體的格式串信息,請參考:http://qa.php.net/phpt_details.php#expectf_section.

 

3. 正則表達式標籤:expectx

1

2

3

4

<<<TC

title: with regular rules.

expectx: hello world [0-9]*.

TC;

4. 多行匹配

1

2

3

4

5

6

7

8

9

<<<TC

title: with multi lines.

expect:|

  2

  3

TC;

 

echo1 + 1 ."\n";

echo1 + 2 ."\n";

5. 將預期放在文件中

 

如果預期內容很多的話,可以將預期內容放在一個隱藏文件中,以.開頭,然後和腳本同名,後綴是et或者ex,如果是正則表達式的話是,以ex結尾,其他的以et結尾。

比如腳本05_expect_file.php,裡面的預期標籤是expect,它對應的預期文件是.05_expect_file.et

腳本06_expectx_file.php預期標籤是expectx,它對應的預期文件是.06_expectx_file.ex 

相關焦點

  • 禪道ZTF 發布 2.2 版本,新增對持續集成、單元和自動化測試框架的...
    官網:https://ztesting.net2019年11月發布2.0版本之後,ZTF受到了禪道新老用戶以及自動化測試人員的廣泛關注。近年來,持續集成和DevOps在行業中的運用越發廣泛,二者在縮短測試周期並提高發布產品的質量方面起著日益重要的作用。為更好地為用戶服務,我們發布了2.2版本,新增版本庫管理、自動化和單元測試有關的新特性。
  • 如何在linux雲伺服器部署禪道
    一、【準備工作】:1、準備1臺linux雲伺服器:例如2核4G,硬碟50G,(阿里雲、騰訊雲或其他雲伺服器都可以,本人使用的是阿里雲伺服器)​2、作業系統: CentOS Linux release 7.4.1708 (Core)3、禪道軟體下載地址:http://www.zentao.net/download.html (也可以
  • 禪道12.3.2 版本發布,修復 BUG,兼容工作流
    禪道項目管理軟體集產品管理、項目管理、質量管理、文檔管理、組織管理和事務管理於一體,是一款功能完備的項目管理軟體,完美地覆蓋了項目管理的核心流程。
  • 禪道在眾包成功第一單:小烏龜和禪道集成
    一、下載地址 1、原始碼:https://github.com/easysoft/zentaoextension/tree/master/client/tortoise2、安裝包:http://dl.cnezsoft.com/zentao/tortoise/release.zip 二、安裝及使用1、安裝 下載安裝包並且解壓到不含中文路徑的目錄中
  • 禪道11.5 版本發布,新增動態過濾機制,完善細節
    禪道項目管理軟體集產品管理、項目管理、質量管理、文檔管理、組織管理和事務管理於一體,是一款功能完備的項目管理軟體,完美地覆蓋了項目管理的核心流程。禪道官網:www.zentao.net。
  • 簡單快速在linux系統下搭建禪道項目管理工具系統
    1 準備工作前往禪道官網下載項目源碼,源碼安裝時間基於linux伺服器上已安裝apache和mysql等工具的前提。下載後,將下載的文件上傳到apache的web目錄下,一般是/var/www/html,然後用unzip指令直接解壓,解壓後,等到zentaopms的一個文件夾。
  • 從0到1開發自動化測試框架
    之前自動測試實踐過程中遇到的諸多問題(代碼復用率低,Case開發及數據構造繁瑣,問題定位困難,學習成本高等),為解決相關痛點問題,我們重新實現了一套APP自動測試框架。本文將著重介紹技術選型、設計思路及百度外賣App的具體實踐。二、自動化測試框架技術選型一個項目中自動化測試是否能有效的展開,自動化測試框架是關鍵所在。
  • CNVD-C-2020-121325:禪道文件上傳漏洞通告
    發布了 文件上傳漏洞 的風險通告,該漏洞編號為 項目管理軟體 是國產的開源項目管理軟體,專注研發項目管理,內置需求管理、任務管理、bug管理、缺陷管理、用例管理、計劃發布等功能,實現了軟體的完整生命周期管理。
  • 帶你全面了解自動化測試框架—從理論到工具
    為了滿足卓越的質量和更快的上市時間的需求,自動化測試將被優先考慮。對於微型、小型和中型企業(SMEs)來說,自動化自身的測試過程是非常必要的,而最關鍵的方面是選擇正確的自動化測試框架。 什麼是自動化測試框架? 自動化測試框架是為自動化測試腳本提供執行環境的腳手架。
  • 禪道<=12.4.2文件上傳漏洞分析與復現
    1、前言百度雲安全團隊監測到禪道官方發布了文件上傳漏洞的風險通告,該漏洞編號為CNVD-C-2020-121325,漏洞影響禪道<=12.4.2版本。我們對漏洞進行了復現和分析,由於需要登錄後臺才可以利用,實際風險相對較低,建議受影響的禪道用戶儘快升級到最新版。
  • 禪道docker容器化一鍵化構建運行兼容ubuntu,centos7
    >腳本禪道開源版: http://dl.cnezsoft.com/zentao/docker/docker_zentao.zip可掛載目錄/var/lib/mysql:該目錄為資料庫的數據目錄。進入docker_zentao目錄,執行命令 docker build -t [鏡像名稱] [Dockerfile所在目錄]docker run --name zentao -p 80:80 -v /data/www:/app/zentaopms -v /data/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d zentao:latestubuntu
  • 5分鐘了解自動化測試,自動化優勢、劣勢、工具和框架選擇全剖析
    一、自動化測試基礎知識什麼是自動化測試1、把人為驅動的測試行為改成機器執行,通過設計的測試用例,由機器按照測試用例的執行步驟對其進行自動操作,輸出結果,由測試人員進行比較。2、自動化測試往往通過一些測試工具或框架,編寫自動化測試用例,來模擬手工測試。3、自動化測試能極大的節省人力、時間和硬體資源,提高測試效率。
  • 五大自動化測試的Python框架
    隨著該程式語言的廣泛使用,基於Python的自動化測試框架也應運而生,且不斷發展與豐富。因此,開發與測試人員在為手頭的項目選擇測試框架時,需要考慮許多方面的因素,其中包括:框架的腳本質量,測試用例的簡單性,以及運行模塊可能存在的技術弱點。為了避免出現「選擇困難症」,我在此為大家準備了五種Python類型的自動化測試框架,以供比較和討論。
  • Selenium自動化測試——框架設計
    一、自動化框架設計如果僅針對單個功能進行自動化測試腳本開發及執行,則無須設計自動化框架。單次執行,然後查看對應的結果再進行缺陷確認,但如果有多個腳本時,則可能存在大量的重複代碼,維護成本非常高。因此一個自動化過程的實施,應當根據產品特性設計合理的自動化測試框架,便於擴展與維護。
  • 程式設計師需要知道:2020年測試五大趨勢
    2020年,軟體測試將演變成新的維度,測試人員將不得不成長,以填補未來更大的空缺。軟體測試人員將需要與各種各樣的IT環境競爭,這些IT領域充滿了要求自動化、持續集成以及其他特徵的新技術,這些特性深深植根於軟體測試的基礎之上。
  • 自動化持續集成測試任務的提出
    11.1.1任務目標本章節以某醫院預約掛號系統的後臺為背景,該系統是一個JSP項目,通過一系列的工具對其進行—步步集成,集成結束後的效果是將測試通過的代碼打包部署到Tomcat容器中。具體步驟大致如下。研發用GIT提交代碼到Gitlab伺服器。
  • Selenium自動化測試框架入門整理
    關注嘉為科技,獲取運維新知本文主要針對Selenium自動化測試框架入門整理,只涉及總體功能及框架要點介紹說明,以及使用前提技術基礎要求整理說明。作為開發人員、測試人員入門參考。本文參考:Selenium框架最新技術規範及相關資料簡介Selenium也是一款同樣使用Apache License 2.0協議發布的開源框架。
  • 萬萬沒想到,自動化測試的面試題居然是這樣的?
    例如: 1.了解 selenium、appium或者其他自動化測試框架 2.至少熟悉一門面向對象開發語言,有一定的代碼功底優先 3.熟悉Java或者python,有一定的測試自動化經驗和代碼閱讀能力 4.了解接口集成測試,會使用JMeter、Postman、
  • 2019年最流行的五大JavaScript 自動化測試框架
    我們正在邁向自動化時代。每一家公司,無論是初創企業還是大型企業,都在努力儘可能高效地將自動化測試納入其發布周期。原因很簡單,因為自動化測試大大減少了驗證重複測試場景的工作量。而JavaScript不再被稱為只面向開發人員的程式語言。隨著自動化測試需求的增加,JavaScript測試框架已經開始廣泛使用,一些用於單元測試,而另一些是為E2E(端到端)測試而設計的。
  • 2020年最主流的軟體測試工具匯總
    一、功能測試工具對於功能測試工具,這個還真沒啥好說的,一般就是寫各種文檔和點點點,不管是各類需求文檔,用例文檔還是報告文檔等都是用的work或者excel來完成的!所以這裡就不多做介紹了!二、Bug缺陷管理工具1、禪道禪道是一款國產的優秀開源項目管理軟體。