禪道自動化測試框架ZenTaoATF1.0發布
大家好,我們非常自豪的向大家推出我們禪道開發團隊開發的自動化測試框架——ZenTaoATF(zentao auto testing framework)。ZenTaoATF只有一個腳本文件,可以支持各種腳本語言編寫的自動化測試腳本,語法簡單,使用靈活,后續會和禪道項目管理軟件進行綁定和集成。</span>
下載地址:http://www.zentao.net/article-view-79773.html
</span>
它的基本工作原理如下:
首先,你需要寫一個測試腳本來實現你正常的測試邏輯。現在支持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. 和禪道項目管理軟件集成
后續版本我們會和禪道開源項目管理軟件進行集成和綁定,腳本和用例可以做到有機的結合。
如何安裝:
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; |
2. expect可以帶有格式串
1
2
3
4
5
6
|
<<<TC title: with format chars. expect: hello world %i. TC; echo 'hello world ' . time() . '.' ; |
3. 正則表達式標簽:expectx
1
2
3
4
|
<<<TC title: with regular rules. expectx: hello world [0-9]*. TC; |
1
2
3
4
5
6
7
8
9
|
<<<TC title: with multi lines. expect:| 2 3 TC; echo 1 + 1 . "\n" ; echo 1 + 2 . "\n" ; |
如果預期內容很多的話,可以將預期內容放在一個隱藏文件中,以.開頭,然后和腳本同名,后綴是et或者ex,如果是正則表達式的話是,以ex結尾,其他的以et結尾。
比如腳本05_expect_file.php,里面的預期標簽是expect,它對應的預期文件是.05_expect_file.et
腳本06_expectx_file.php預期標簽是expectx,它對應的預期文件是.06_expectx_file.ex