gpt4 book ai didi

PHPUnit try catch 在测试用例中不起作用

转载 作者:行者123 更新时间:2023-12-03 23:02:05 28 4
gpt4 key购买 nike

我试图在 PHPUnit 测试中捕获异常,但它没有按预期工作。异常似乎在更高级别被捕获,我不明白为什么。

public function testException()
{
echo 'Enter';
try {
throw new Exception('error.');
} catch (Exception $e) {
echo 'catch Exception';
}
echo 'End';
}

在输出中只有“Enter”可见。我没有到达“终点”。(我使用的是 PHP7)

谢谢

编辑:用 \Exception 替换所有 Exception 解决了我的问题

最佳答案

处理异常可能很棘手,尤其是当它们被称为 Exception :-)

看看所有的反馈this (almost the same) question已生成。

现在,只有与预期的类不匹配时才捕获异常。在这种情况下,肯定是因为不精确的 Exception 类名规范,这肯定会通过将它们指定为 \Exception 来解决。

正如上述问题线程中的评论者巧妙地指出的那样:

Without the backslash Exception is specific to the namespace and won't be matched (or caught).

关于PHPUnit try catch 在测试用例中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39277421/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com