gpt4 book ai didi

phpunit - 如何在 PHPUnit 中捕捉 PHP 警告

转载 作者:行者123 更新时间:2023-12-02 11:32:51 25 4
gpt4 key购买 nike

我正在编写测试用例,这是我的一个问题。

假设我正在测试一个简单的函数someClass::loadValue($value)

正常的测试用例很简单,但假设传入 null 或 -1 时函数调用会生成 PHP 警告,这被视为错误。

问题是,如何编写 PHPUnit 测试用例,以便在函数正常处理 null/-1 时成功,并在抛出 PHP 警告时失败?

最佳答案

PHPUnit_Util_ErrorHandler::handleError() 根据错误代码抛出几种异常类型之一:

  • PHPUnit_Framework_Error_Notice 用于 E_NOTICEE_USER_NOTICEE_STRICT
  • PHPUnit_Framework_Error_Warning 用于 E_WARNINGE_USER_WARNING
  • PHPUnit_Framework_Error 对于所有其他

您可以捕获并期待这些异常,就像捕获任何其他异常一样。

/**
* @expectedException PHPUnit_Framework_Error_Warning
*/
function testNegativeNumberTriggersWarning() {
$fixture = new someClass;
$fixture->loadValue(-1);
}

关于phpunit - 如何在 PHPUnit 中捕捉 PHP 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053914/

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