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
  • 相关阅读:
    JS Function Arguments
    C# CuttingEdge.Conditions 验证帮助类库 文档翻译
    JS AngualrJs 指令
    每日踩坑 2018-06-19 AutoMapper简单性能测试
    C# 集合类-使用
    工具 EZDML表结构设计器
    unittest的discover方法
    转:unittest的几种运行方式
    unittest学习5-断言
    unittest学习4-跳过用例执行
  • 原文地址:https://www.cnblogs.com/ivy-zheng/p/11032022.html
Copyright © 2011-2022 走看看