Laravel测试迁移污染断言

问题描述 投票:0回答:1

[在为Laravel软件包编写测试时,我遇到了一些奇怪的事情。我的空测试通过了,而不是标记为“ Risky”。

[进一步的研究使我进入了PendingCommand类,该类具有run()方法,该方法对命令的退出代码进行断言。该run()是通过调用PendingCommand实例化的。在运行命令之前,我可以通过调用$this->astisan('migrate:fresh')->run()来跳过此断言。它起作用了,但是仍然有断言发生。

有人在执行实际测试之前曾有此问题和/或能够防止断言发生?

很高兴看到正在做出哪些断言,但是我找不到它。我唯一能找到的是assertExitCode(null)类保留已完成的所有断言的assertExitCode(null),而不是哪个断言。

我将继续寻找解决方案,并将我的发现发布到这个问题。

laravel testing phpunit assert
1个回答
0
投票

[发现Assert具有$count方法,该方法将防止带有断言的模拟$count

最终代码:

InteractsWithConsole
© www.soinside.com 2019 - 2024. All rights reserved.