输出不可预测的 Laravel 控制台测试

标签 laravel testing console tdd laravel-artisan

是否可以用不可预知的输出来测试 Laravel Artisan Command?

例如,我的 artisan 命令有一个输出:

您的新密码是:bGiJjIjAT0

bGiJjIjAT0 实际上是一个随机字符串。 artisan 命令生成该随机字符串。

AFAIK,控制台测试 expectsOutput 需要准确的字符串。

最佳答案

试试这个:

    Artisan::call('your:command');
    $output = Artisan::output();
    $this->assertStringContainsString('Your new password is: ', $output);

关于输出不可预测的 Laravel 控制台测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61334377/

相关文章:

laravel - 如何使用 Laravel mix 链接到 node_modules 文件夹

使用 Airflow 测试与使用 DebugExecutor 调试 Airflow 任务

phpvendor\bin\phpunit 正在控制台中打印文本

php - Laravel Eloquent ;显示最近的记录

laravel - 在 node_modules 文件夹中找不到模块(但文件存在)

php - addSelect() Builder 方法如何在 Laravel 中工作

angularjs - 如何在 AngularJS 应用程序中测试服务器端验证

c++ - 使用 "<<"时使用 "+"或 "cout"将字符串放在一起

javascript - UMD 模式中的全局上下文

java - Kafka 连接什么时候需要 ZooKeeper 配置?