如何解决Phpunit Assert 是否抛出任何错误代码?
PhpUnit 断言是否会抛出任何错误代码/成功代码 - 无论何时通过或失败断言?
例如 -
Assert::assertEquals('$expectedValue','$actualValue');
如果失败 - 错误代码是什么?
解决方法
感谢提问,仔细看看很有趣:
给定:
$expected = true;
$actual = false;
使用时:
self::assertEquals($expected,$actual);
或:
$this->assertEquals($expected,$actual);
在 Phpunit 测试用例测试方法中,Phpunit 不是通过返回而是通过抛出 Exception 进行通信,以防期望失败,并且不抛出任何异常 以防它通过。
这是通过 Assert::assertEquals()
9.5.6 static::assertThat()
9.5.6 约束在您的问题 evaluating the IsEqual
9.5.6 中完成的。
对于 evaluate()
方法,您可以要求返回值,然后返回一个布尔值(然后是代码 true
或 false
)。
否则会抛出一个 ExpectationFailedException
9.5.6,向测试运行程序发出失败的断言(期望)信号,测试运行程序识别出测试失败并将测试标记为失败。
PhpUnit 断言是否会抛出任何错误代码/成功代码 - 无论何时通过或失败断言?
一般来说,他们在期望不匹配时抛出。
但是您通常不会看到它,因为测试运行器正在处理该信号及其编码含义:
- 如果您的所有期望都匹配,则运行测试方法迭代的结果是成功。
- 如果其中一个期望仍然不匹配,则运行测试方法迭代的结果是失败。
- 如果您的测试方法没有预期,则被视为不完整的测试。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。