ThinkPHP5单元测试的使用示例

ThinkPHP5单元测试的使用示例

首先安装ThinkPHP5的单元测试扩展,进入命令行,切换到tp5的应用根目录下面,执行:

composer require topthink/think-testing

由于单元测试扩展的依赖较多,因此安装过程会比较久,请耐心等待。

安装完成后,会在应用根目录下面增加tests目录和phpunit.xml文件。

默认带了一个tests/TestCase.php主文件和tests/ExampleTest.php单元测试文件。

1)TestCase.php内容如下:

namespace tests;
class TestCase extends \think\testing\TestCase
{
    // 默认访问的根路径为本地路径
    protected $baseUrl = ‘http://localhost’;
}
2)ExampleTest.php单元测试文件内容如下:
namespace tests;
class ExampleTest extends TestCase
{
    public function testBasicExample()
    {
        $this->visit(‘/’)->see(‘ThinkPHP’);
    }
}

我们可以直接在命令行下面运行单元测试:

php think unit

请始终使用以上命令进行单元测试,而不是直接用phpunit来运行单元测试,显示的结果为:

C:\wamp64\www\thinkphp5>php think unit
PHPUnit 4.8.36 by Sebastian Bergmann and contributors.
.
Time: 252 ms, Memory: 6.00MB
OK (1 test, 2 assertions)
C:\wamp64\www\thinkphp5>

我们来添加一个新的单元测试文件,单元测试文件为tests/IndexTest.php,内容如下:

<?php
namespace tests;
class IndexTest extends TestCase
{
    /**
     * Home页面能否查找到1111
     */
    public function testHomeExample()
    {
        $this->visit(‘/index/index/home’)->see(‘1111’);
    }
}

在指定路径文件内新建一个方法:

public function home()
{
    return ‘nihao1111’;
}

测试结果显示:

C:\wamp64\www\thinkphp5>php think unit
PHPUnit 4.8.36 by Sebastian Bergmann and contributors.
.
Time: 274 ms, Memory: 6.00MB
OK (2 test, 4 assertions)
C:\wamp64\www\thinkphp5>

 

来源:https://www.kancloud.cn/manual/thinkphp5/182511

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据