몇 가지 테스트 케이스를 작성 중이며 Mock 객체를 사용하는 테스트 케이스가 있습니다. 두 클래스 메서드가 다른 클래스 메서드에서 호출되는지 확인해야합니다. 여기에 내가 무슨 짓을했는지의 :SimpleTest Mocking Problem
먼저 내가 모의 생성 :
Mock::generate('Parser');
그런 다음 내 테스트 안에 내가 전화 :
public function fetchAndParse($url) {
$this->loadUrl($url);
$this->parse();
}
:
$P = new MockParser();
$P->expectOnce('loadUrl', array('http://url'));
$P->expectOnce('parse');
$P->fetchAndParse('http://url');
내 구현 코드는 같다
그리고 loadUrl과 parse() 메소드가 존재합니다. 내 테스트에서 두 가지 실패가 나타납니다. 둘 다 "[loadUrl]의 예상 호출 횟수는 [1] [0]입니다. 무슨 일이 벌어지고 있는지 전혀 모르겠다 - 그 함수에서 메서드가 호출되고있다!
감사합니다,
제이미 내 경험이 .NET 세계에서 프레임 워크를 조롱와 함께왔다 동안
정말 도움이 되네요. 코드를 꽤 많이 바꿔야한다는 것을 의미합니다.하지만 적어도 지금 무슨 일이 일어나고 있는지 알고 있습니다! 감사! –