내 단위 테스트에 PHPUnit을 사용합니다. 올바른 매개 변수로 메소드가 호출되는지 테스트하기 위해 mock 객체를 사용하고 있습니다. 이것은 단지 한 번하고 싶을 때 잘 동작합니다.PHPUnit 및 모의 객체로 올바른 매개 변수를 사용하여 같은 메소드를 호출하면 어떻게 테스트 할 수 있습니까?
$logMock = $this->getMockBuilder('Logger')
->disableOriginalConstructor()
->getMock();
//check if it updates the correct record
$logMock->expects($this->exactly(1))
->method('updateLog')
->with(456, 'some status');
이제 updateLog가 다른 매개 변수를 사용하여 두 번째 호출되는지 테스트해야하는 상황이 있습니다. 나는 'with'방법으로 이것을 어떻게 할 수 있는지를 모른다.
아무도 제안하지 않았습니까?
저는 PHPUnit 내부 모의 기능을 사용하고 있습니다. 내 구현 (테스트중인 메서드) 안에 updateLog가 두 번 호출되므로 다른 인수로 메서드 인수를 테스트 할 수 없습니다. – Fino
이 사이트에 따르면 호출 색인 기능을 사용하여이 작업을 수행 할 수 있습니다. http://www.kreamer.org/phpunit-cookbook/1.0/mocks/set-mock-expectations-for-multiple-calls-to-a-function – treze
고마워요! $ this-> at (색인)이 작업을 수행합니다. 또한 웹 사이트에 링크를 주셔서 감사합니다, 몇 가지 유용한 정보. – Fino