4
나는 내 모든 테스트에서 조롱 개체를 갖고 싶어, 그래서 setUpBeforeClass() 메소드를 만들려고하지만, getMockBuilder는 다음과 같이 정적으로 호출 할 수있다, 그래서이 방법은 정적 :phpunit의 setUpBeforeClass 메소드에서 조롱 된 객체를 만드는 방법은 무엇입니까?
public static function setUpBeforeClass() {
self::mocked_object = self::getMockBuilder('MockedClass')
->disableOriginalConstructor()
->getMock();
}
Argument 1 passed to PHPUnit_Framework_MockObject_MockBuilder::__construct() must be an instance of PHPUnit_Framework_TestCase, null given
조롱 개체가 setUpBeforeClass 방법에 내장 또는 나는 공공 기능 설정에서 테스트 (전에 매번 구축해야 할 수있는 어떤 기회가 : 문제는 getMockBuilder 정적으로 호출 할 수 없다는 것입니다() 방법)?
왜 거기에 모의가 필요합니까? 정규 설치 방법이나 테스트에서 설정하지 않으셨습니까? 모의에 대한 기대치를 세우려한다면, 한 번만 만들어지기를 원하지는 않습니다. – Gordon
mocked_object의 메서드는 항상 동일한 결과를 반환하므로, 한 번만 인스턴스화하는 것이 더 효과적이라고 생각한 이유입니다. 어쨌든 setup 메서드에서 만들 수는 있지만 setUpBeforeClass에서 만들 수 있는지 알고 싶습니다. 너무. –
가능한지 확실하지 않지만 격리를위한 각 테스트마다 깨끗한 [스텁] (http://www.martinfowler.com/articles/mocksArentStubs.html#TheDifferenceBetweenMocksAndStubs)을 원하기 때문에 나쁜 습관을 주장합니다. – Gordon