温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

phpunit自定义的示例分析

发布时间:2021-09-07 10:21:04 来源:亿速云 阅读:122 作者:小新 栏目:web开发

这篇文章主要介绍phpunit自定义的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  1. 下载:

    wget  https://phar.phpunit.de/phpunit-7.0.phar
    chmod  +x  phpunit-7.0.phar
    mv  phpunit-7.0.phar  /usr/local/bin/phpunit
    phpunit  --version

    phpunit自定义的示例分析

  2. 创建文件夹:

    mkdir  src
    mkdir  tests
  3. 创建测试文件:
    a. 自动加载:
    vim  src/autoload.php

    <?php
    /*
    @desc:自动加载带命名空间的类的函数
    @param dir 需要注册自动加载的文件夹
    */
    function autoloader($dir){
    spl_autoload_register(function($name) use ($dir){
        $name = str_replace('\\',DIRECTORY_SEPARATOR,$name);
        require $dir.DIRECTORY_SEPARATOR.$name.'.php';
    });
    }
    define('ROOT',__DIR__);
    autoloader(ROOT);

    b. 测试类:
    vim  src/Money.php

    <?php
    class Money
    {
    private $amount;
    public function __construct($amount)
    {
        $this->amount = $amount;
    }
    public function getAmount()
    {
        return $this->amount;
    }
    public function negate()
    {
        return new Money(-1*$this->amount);
    }
    }

    c. 测试文件:
    vim  tests/MoneyTest.php

    <?php
    use PHPUnit\Framework\TestCase;
    class MoneyTest extends TestCase
    {
    public function testCanBeNegated()
    {
        $a = new Money(1);
        $b = $a->negate();
        $this->assertEquals(-1, $b->getAmount());
    }
    }
  4. 命令行测试:

    phpunit  --bootstrap  src/autoload.php  tests/MoneyTest.php

    phpunit自定义的示例分析

  5. 测试文件测试:
    a. 创建配置文件:
    vim  phpunit.xml

    <phpunit bootstrap="src/autoload.php">
    <testsuites>
        <testsuite name="money">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
    </phpunit>

    b. 执行命令:

    phpunit tests/MoneyTest

    phpunit自定义的示例分析

以上是“phpunit自定义的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI