명령줄 테스트
ㅋㅋ
Introduction
HTTP 테스트를 단순화하는 것 외에도, Laravel은 사용자 입력이 필요한 콘솔 애플리케이션을 테스트하기 위한 간단한 API를 제공합니다.
- 예상되는 입력/출력 Laravel은 콘솔 명령에 대한 사용자 입력을 "시뮬레이트"하기 위해
expectsQuestion
메서드를 사용합니다. 또한 assertExitCode
및 expectsOutput
메서드를 사용하여 콘솔 명령 종료 코드와 예상 출력 텍스트를 지정할 수 있습니다. 예는 다음과 같습니다. Artisan::command('question', function () { $name = $this->ask('What is your name?'); $language = $this->choice('Which language do you program in?', [ 'PHP', 'Ruby', 'Python', ]); $this->line('Your name is '.$name.' and you program in '.$language.'.'); });
다음 샘플 코드를 참조하여
expectsQuestion
, expectsOutput
및 assertExitCode를 사용하는 명령을 테스트할 수 있습니다. code> 메소드:
/** * 测试控制台命令。 * * @return void */ public function test_console_command(){ $this->artisan('question') ->expectsQuestion('What is your name?', 'Taylor Otwell') ->expectsQuestion('Which language do you program in?', 'PHP') ->expectsOutput('Your name is Taylor Otwell and you program in PHP.') ->assertExitCode(0); }
이 글은
LearnKu.com웹사이트에 처음 게시되었습니다.