Laravel - Artisan 命令

  • 简述

    Laravel 5.7 提供了处理和测试新命令的新方法。它包括测试 artisan 命令的新功能,演示如下 -
    
    class ArtisanCommandTest extends TestCase{
       public function testBasicTest() {
          $this->artisan('nova:create', [
             'name' => 'My New Admin panel'
          ])
          ->expectsQuestion('Please enter your API key', 'apiKeySecret')
          ->expectsOutput('Authenticating...')
          ->expectsQuestion('Please select a version', 'v1.0')
          ->expectsOutput('Installing...')
          ->expectsQuestion('Do you want to compile the assets?', 'yes')
          ->expectsOutput('Compiling assets...')
          ->assertExitCode(0);
       }
    }
    
  • 代码解释

    这里在测试用例模块下创建了一个名为“ArtisanCommandTest”的新类。它包括一个基本功能testBasicTest其中包括断言的各种功能。
    工匠命令expectsQuestion包括两个属性。一个带着疑问,另一个带着疑问apiKeySecret。在这里,工匠验证 apiKeySecret 并验证用户发送的输入。
    同样的场景也适用于“请选择一个版本”的问题,其中用户需要提及特定版本。