PHP单元测试PHPUnit简单入门和使用

作者:IT技术圈子 浏览量:566   更新于 2023-09-30 23:50 标签:

一、Composer安装PHPUnit

pratice是我的项目根目录,现将PHPUnit引入到项目中,进入到D:\phpstudy_pro\WWW\pratice,创建vendor目录,专门管理Composer包,在pratice目录下新建comoposer.json,如有则忽略。

composer.json内容如下:

{
  "autoload": {
    "classmap": [
      "vendor/"
    ]
  },
  "require-dev": {
  }
}

通过Composer的方法将PHPUnit引入到项目中:

composer require --dev phpunit/phpunit ^8

注意:一定要注意PHPUnit版本对应的PHP版本,PHPUnit 9支持7.3、7.4版本,PHPUnit 8支持7.2、7.3、7.4,按需引入即可,具体可参考:http://www.phpunit.cn/。安装完后vendor目录下会有phpunit以及相关的类库也就是包。

二、编写测试用例

pratice项目目录下新建tests/unit目录,创建test.php测试用例

<?php
namespace test\tests\unit;
require_once __DIR__ . '../../../test.php';

use PHPUnit\Framework\TestCase;

class test extends TestCase
{
    public function testUnit() {
        $obj = new \test\test();
        $result = $obj -> returnString();
        $this->assertEquals('test', $result);
    }
}

编写测试代码,pratice/test.php:

<?php
namespace test;

/**
 * 单元测试类
 *
 * @package test
 */
class test
{
    public function returnString() {
        return 'test';
    }
}

三、测试

运行测试用例,pratice/tests/unit/test.php,在项目目录pratice下执行命令:

php vendor/phpunit/phpunit/phpunit tests\unit\test.php

如果出现报错,可以试下加入环境变量;

echo @php "%~dp0vendor/phpunit/phpunit/phpunit" %* > phpunit.cmd

再次运行,大功告成

yyy