ZENTAOATF - 禅道自动化测试框架


GPL
跨平台
Google Go

软件简介

ZENTAOATF是由禅道开发团队开发的自动化测试框架。它旨在解决自动化测试过程中测试脚本的发现、执行、比对、结果等问题。它只有一个可执行文件,可以支持各种脚本语言编写的自动化测试脚本,语法简单,使用灵活。而且已经和禅道深度集成,可以将禅道里面的测试用例和脚本做直接关联,并可以把脚本运行的结果提交到禅道中。自动化测试脚本执行失败后,还可以直接创建Bug。

基本工作原理如下:

  1. 首先,你需要写一个测试脚本来实现你正常的测试逻辑。现在支持php, python, ruby, lua, tcl, bash。
  2. 这个测试脚本里面按照自己所测程序的业务逻辑编写,比如链接数据库,查询某一个记录等等。
  3. 然后通过注释的方式为这个测试脚本写上基本的用例信息:标题,步骤和预期结果
  4. 然后执行ztf,ztf会扫描当前目录下面的带有用例标志的脚本,然后调用执行,得出每个脚本的实际输出,然后和用例里面事先记录好的预期结果进行比对,如果相匹配,则成功,如果失败,则计算diff信息。

    !/usr/bin/env php

    <?php
    /*
    [case]
    title=the simple demo for ztf
    cid=0
    pid=0
    [group]
    1. step1 >> expect 1
    2. step2
    3. step3 >> expect 3
    [esac]
    /
    checkStep1() || print(“>> expect 1\n”);
    checkStep3() || print(“>> expect 3\n”);
    function checkStep1(){}
    function checkStep3(){}

相比较于其他的自动化测试框架或者单元测试框架来将,ZENTAOATF的主要特点如下:
1. 只有一个可执行文件: 整个自动化测试框架只有一个ztf可执行文件,使用go开发,安装和运行都非常的方便。
2. 语法简单: 自动化测试脚本的规则只有比较简单的几项,使用ini格式的语法组成。便于撰写和阅读。
3. 跨语言 :支持各种各样的脚本语言,比如python, ruby, lua, tcl, bash, bat等。
4. 跨平台: 可以运行在各个平台下面。
5. 和禅道项目管理软件深度集成

执行的效果如下: