Ujian baris arahan
Pengenalan
- Selain memudahkan ujian HTTP, Laravel menyediakan API mudah untuk menguji aplikasi konsol yang memerlukan input pengguna.
- Input/output yang dijangkakan
Laravel menggunakan kaedah
expectsQuestion
untuk "mensimulasikan" input pengguna untuk arahan konsol. Selain itu, anda boleh menentukan kod keluar arahan konsol dan teks output yang dijangka menggunakan kaedah assertExitCode
dan expectsOutput
. Contohnya adalah seperti berikut: 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.'.'); });
Anda boleh merujuk kepada contoh kod berikut untuk menguji arahan, yang menggunakan expectsQuestion
, expectsOutput
dan assertExitCode kod> kaedah:
/** * 测试控制台命令。 * * @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); }
Artikel ini pertama kali diterbitkan di laman web
LearnKu.com