如何在失败时测试laravel作业



我想在失败时测试我的laravel作业。我使用laravel 9和最新的phpunit版本。

我认为在工作中嘲笑异常不会被抓住。

例如,我有一个作业,它在handle()函数中调用一个api。我想测试一下api不工作的情况,然后抛出一个异常。因此在这种情况下调用了CCD_ 2函数。但在测试中,如果我模拟api http请求,如果它失败了,mock不会检测到,然后继续测试。所以我不能测试CCD_ 3的功能。

如果您使用laravel 7.x或更高版本,您可以使用HTTP facade的fake方法来模拟您想要的响应,并且您可以在作业中获得失败操作。

有关更多信息,您可以在laravel文档中阅读:

最新更新