Laravel 9.x에서 부분 조롱 사용 문제
<p>안녕하세요 laravel 개발자 여러분, 부분 모의 문제를 발견했습니다. 모의가 필요한 내부 메서드를 사용하는 메서드를 테스트해야 합니다. 다음 아이디어처럼 메서드를 모의하기 위해 여러 메서드를 사용해 보았습니다. < ; /p>
<pre class="brush:php;toolbar:false;">#1
$mockMyClass = 조롱::mock(
$myClassInstance
)->makePartial();
#2
$mockMyClass = $this->partialMock();
#삼
$mockMyClass = $this->createPartialMock();
// 그런 다음
$mockMyClass->shouldReceive('internalMethod')
->andReturn($responseInternalMethod);</pre>
<p>그리고 분명히 Laravel Mocking Objects 문서에 설명된 방식을 사용합니다</p>
<pre class="brush:php;toolbar:false;">AppService 사용;
MockeryMockInterface를 사용하세요.
$mock = $this->partialMock(Service::class, function (MockInterface $mock) {
$mock->shouldReceive('프로세스')->한 번();
});</pre>
<p>이 아이디어 중 어느 것도 작동하지 않습니다. $mockMyClass는 항상 $responseInternalMethod를 반환해야 하는 모의 메서드가 아닌 실제 메서드를 실행합니다. 누구든지 이 문제가 있습니까? 로컬 환경이 아닌 Laravel, Mockito 또는 외부의 문제인지 확인해야겠습니다. 하하. 나는 당신을 읽었습니다! </p>
<p>기술적 세부정보:
라라벨 9.x
PHP 8.1
PHP 유닛 9.5
도발 1.5</p>