0
PHPUnit이 완전히 실행을 중단하고 특정 조건 (자체 오류)이 충족되면 어떻게 종료 할 수 있습니까? 실제로 필자가 필요로하는 것은 PHPUnit이 exit()
을 함정에 빠뜨리고 종료 대신 계속 실행한다는 점을 제외하면 아래와 같습니다.PHPUnit : 특정 오류시 프로그램 종료를 강제하는 방법
// PHPUnit does not alter existing but empty env vars, so test for it.
if (strlen(getenv('APP_HOME')) < 1) {
$this->fail('APP_HOME set but empty.');
exit(1); // <-- Does not work.
}
참고 : 내가 필요하지 않습니다 따라서 나의 XML 파일에 stopOnError="true"
또는 stopOnFailure="true"
설정, 기타 오류 및 고장 정상적으로 계속 실행합니다.
하지만'하면') (우리의 '실행 중지 $ stopFlag'가 맞습니다. 맞습니까? 여러 개의 파일 (클래스)을 가지고 있으며 각각은 여러 개의 테스트 케이스가 있으며, 모두 환경 변수가 올바르게 설정되어 있습니다. – CXJ
위의'run()'메서드에서'$ result-> stop()'줄 대신'exit (1)'을 사용하여 원하는대로 할 수있었습니다. 흥미롭게도,'exit()'는이 문맥에서 정상적으로 작동하고,'phpunit'을 완전히 종료합니다. 테스트 내에서 호출 될 때 작동하지 않습니다. – CXJ
다행이라면 잘 할 수 있습니다. 'stop()'호출을 통해 어떤 결과를 얻었습니까? 첫 번째 실패 이후 더 이상의 테스트를 종료하지 않았습니까? –