PHPUnit测试没有执行

时间:2017-11-21 14:53:11

标签: php unit-testing testing phpunit

我正在尝试在PHPUnits中执行一些测试,但它没有被执行。

<?php

use \PHPUnit\Framework\TestCase;

class UserControllerTest extends TestCase {

    public function testThatCanGetNumber() {
        $mock = $this->getMockBuilder('UserModel')
            ->setMethods(array('getNumber'))
            ->getMock();

        $mock->expects($this->once())
            ->method('getNumber')
            ->with($this->equalTo(5));
    }
}

但是,如果我使用\PHPUnit_Framework_TestCase扩展该类,它将被执行。那是为什么?

这是我的phpunit.xml

<?xml version="1.0" encoding="UTF-8" ?>
<phpunit bootstrap="vendor/autoload.php"
         colors="true"
         verbose="true"
         stopOnFailure="false">
    <testsuites>
        <testsuite name="Test suite">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
</phpunit>

1 个答案:

答案 0 :(得分:0)

您希望该方法被调用,但您没有在测试中执行任何操作。您应该调用调用模拟方法的方法。