Wojtek L 2 Napisano 17 Marca Zgłoś Udostępnij Napisano 17 Marca Jest sobie kod: $lm = new ListBuckets(); $lm->ListAllBuckets(); $mocked = $this->createMock(ListBuckets::class); $mocked->expects($this->once())->method('ListAllBuckets')->willReturn("Sample return"); jest to kod tanijny testu pewnej klasy ( ListBuckets ) napisany z użyciem phpunit. Po odpaleniu testu wywala: Expectation failed for method name is "ListAllBuckets" when invoked 1 time(s). Method was expected to be called 1 times, actually called 0 times. Google g*wno pomaga ( wszystkie3 rozwiązania jakie tam są oznaczone jako sprawdzone g*wno robią ). Nawet na GitHubie phpUnita jest założone issue z tym problemem z roku 2017 i co? I nic!! Jak ten problem naprawić Odnośnik do odpowiedzi Udostępnij na innych stronach
Ekspert -n3veR 6 303 Napisano 17 Marca Ekspert Zgłoś Udostępnij Napisano 17 Marca (edytowane) Ogólnie, to pomieszałeś Stuba z Mockiem. Stub jest tutaj niepotrzebny wg mnie, bo to test bez sensu. <?php $stub = $this->createMock(ListBuckets::class); $stub->method('ListAllBuckets') ->willReturn('Sample return'); $this->assertSame('Sample return', $stub->ListAllBuckets()); A co do Mocka, to sam sobie poczytaj czy go potrzebujesz... https://phpunit.de/manual/6.5/en/test-doubles.html#test-doubles.mock-objects.examples.SubjectTest.php Edytowane 17 Marca przez -n3veR SeNioR dodał reakcję 1 Odnośnik do odpowiedzi Udostępnij na innych stronach
Rekomendowane odpowiedzi
Problem wciąż nierozwiązany? Dodaj swoją odpowiedź
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się