一切……我的主题说明了一切。我正在尝试做一个实际上故意使“为foreach()提供的参数无效”发生的测试。我试图让 PHPUnit期待它,但是......不,我的测试仍然戛然而止。原因:“为 foreach() 提供的参数无效”就在我告诉它它会发生的确切位置。
在我的文件顶部,我有:
use PHPUnit\Framework\TestCase;
use PHPUnit\Framework\Error\Error;
use PHPUnit\Framework\Error\Notice;
use PHPUnit\Framework\Error\Warning;
我的班级声明以:
Class flirzelkwerpTest extends TestCase {
以下是测试文件中的行:
// Let's try to add nothing.
// (It should throw an error because of "Invalid argument supplied for foreach()" in barabajagal.php.)
$this->expectException(\InvalidArgumentException::class);
$this->expectExceptionMessage('Invalid argument supplied for foreach()');
$resp = $barabajagal->add();
错误发生在最后一行。前两行不应该告诉 PHPUnit,“嘿,伙计,我希望这里有一个错误,这是你应该逐字收到的消息”?
我们使用的是 PHP 7.3.4 和 PHPUnit 8.3.2。