PHPUnit can';t在模拟后实例化真实类

PHPUnit can';t在模拟后实例化真实类,phpunit,Phpunit,在一个单元测试中模拟了一个类之后,我就不能再在另一个单元测试中使用真正的类了 这与这里的问题相同,但答案并不相关 我有两个单元测试: class BarServiceTest { function setUp() { $this->fooService = $this->getMock('Application\Service\FooService', ['fooMethod'], [],'MockFooService', false, false, false);

在一个单元测试中模拟了一个类之后,我就不能再在另一个单元测试中使用真正的类了

这与这里的问题相同,但答案并不相关

我有两个单元测试:

class BarServiceTest {
  function setUp() {
    $this->fooService = $this->getMock('Application\Service\FooService', ['fooMethod'], [],'MockFooService', false, false, false);
  }
}
以及:

运行
FooServiceTest
时,
fooService
对象将包含模拟对象

我怎样才能防止这种情况?更改
getMock
中的
mockClassName
参数确实会更改mock的类名,但当我尝试获取真实实例时,它仍然会返回mockObject


我真的不明白这种行为。

显然这阻止了它

$this->fooService = $this->getMockBuilder('Application\Service\FooService')
  ->disableOriginalConstructor()
  ->getMock();
$this->fooService = $this->getMockBuilder('Application\Service\FooService')
  ->disableOriginalConstructor()
  ->getMock();