测试 cakeError() 被抛出

发布于 2024-11-02 17:48:08 字数 548 浏览 4 评论 0原文

我正在 CakePHP 1.3 中使用单元测试。我的应用程序使用一个非常简单的ErrorHandler,正如书中所讲的。如果出现问题,我的一个模型会调用 $this->cakeError('myError')

现在我想要一个针对我的模型的测试用例,用于检查是否正确调用了错误处理程序(给出了错误的数据)。

SimpleTest 提供 expectError() 但这似乎针对标准 PHP 错误。 CakePHP 的错误处理是另一回事,不过这些错误不会被expectError() 捕获。如果在测试中调用 cakeError(),则会呈现错误消息,而不是测试结果。

如何测试预期的 cakeErrors?

I am using Unit Testing in CakePHP 1.3. My app uses a very simple ErrorHandler as taught by the book. One of my models calls $this->cakeError('myError') if something is wrong.

Now I want a test case for my model, that checks if - wrong data given - the error handler is properly called.

SimpleTest offers expectError() but this seems to be made for standard PHP errors. CakePHP's error handling is a different thing, though, these errors are not caught by expectError(). If cakeError() is called in a test, the error message is rendered, rather than the test results.

How can I test for expected cakeErrors?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

素手挽清风 2024-11-09 17:48:08

您可能可以使用部分模拟并模拟 CakeError 方法。然后您可以使用 expectOnce 断言 cakeError 方法被调用。有关示例和进一步说明,请参阅文档

You could probably use a partial mock and mock the cakeError method. Then you can use expectOnce to assert the cakeError method is called. See the documentation for an example and further explanations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文