zoukankan      html  css  js  c++  java
  • phpstorm配置phpunit进行单元测试

    1、配置单元测试目录:

    (1)autoload.php

    <?php
    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);

    (2)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);
        }
    }

    (3)MoneyTest.php

    <?php
    
    use PHPUnitFrameworkTestCase;
    
    class MoneyTest extends TestCase
    {
        public function testCanBeNegated()
        {
            $a = new Money(1);
            $b = $a->negate();
            $this->assertEquals(-1, $b->getAmount());
        }
    }

    2、配置测试框架

    3、建立单元测试模板:

    4、运行测试:

    5、测试结果

     6、phpunit中相关的几个断言:

    AssertTrue/AssertFalse    断言是否为真值还是假
    AssertEquals        判断输出是否和预期的相等
    AssertGreaterThan         断言结果是否大于某个值,同样的也有LessThan(小于),GreaterThanOrEqual(大于等于),
    LessThanOrEqual           (小于等于).
    AssertContains            判断输入是否包含指定的值
    AssertType                判断是否属于指定类型
    AssertNull                判断是否为空值
    AssertFileExists          判断文件是否存在
    AssertRegExp              根据正则表达式判断

    7、注意事项

    (1)测试用例要引入phpunit

       use PHPUnitFrameworkTestCase;

    (2)测试类要继承TestCase

       class MoneyTest extends TestCase

    参考:https://blog.51cto.com/12173069/2317104
  • 相关阅读:
    mysql max(),min()的优化
    统计网站某天的点击数
    小程序网络图片下载
    小程序封装
    小程序 封装调用
    小程序request封装
    git 使用
    MYSQL查询语句优化
    微信开发遇到的坑
    PHP支付宝支付开发流程
  • 原文地址:https://www.cnblogs.com/ivy-zheng/p/11032022.html
Copyright © 2011-2022 走看看