怎么在thinkPHP框架中tpunit单元测试库

本篇文章给大家分享的是有关怎么在thinkPHP框架中tpunit单元测试库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

thinkphp本身并没有提供相应的单元测试支持,所以这里介绍一个可以对tp进行单元测试的库tpunit。

Tpunit这个库是依赖于phpunit的,其特点是易用、方便和非入侵式。

使用TPUNIT很简单,只需要定义一个路径常量和导入要被测试的文件即可。

Home模块下有个控制器如下:

namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
  function test(){
    echo 123;
  }
}

使用tpunit的话,测试类:

class IndexTest extends PHPUnit_Framework_TestCase{
  //构造函数
  function __construct(){
    //定义TP的版本
    define('TPUNIT_VERSION','3.2.3');
    //定义目录路径,最好为绝对路径
    define('TP_BASEPATH', 'E:/www/novel/');
        //导入base库
        include_once'E:\www\novel\Application\test\base.php';
        //导入要测试的控制器
        include_once'E:\www\novel\Application\Home\Controller\IndexController.php';
  }
  //测试index动作
  public function testIndex(){
    //新建控制器
    $index=new \Home\Controller\IndexController();
        //调用控制器的方法
        $index->test();
        //断言
        $this->expectOutputString('123');
  }
}

然后使用:

phpunit E:\\www\\novel\\Application\\test\\IndexTest.php

以上就是怎么在thinkPHP框架中tpunit单元测试库,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。