php - Phpunit Assert 是否抛出任何错误代码?
问题描述
PhpUnit Assertions 是否抛出任何错误代码/成功代码 - 每当断言通过或失败时?
例如 -
Assert::assertEquals('$expectedValue', '$actualValue');
如果失败 - 错误代码是什么?
解决方案
感谢您提出这个问题,仔细看看非常有趣:
鉴于:
$expected = true;
$actual = false;
使用时:
self::assertEquals($expected, $actual);
或者:
$this->assertEquals($expected, $actual);
在 Phpunit 测试用例测试方法中,Phpunit 不是通过返回进行通信,而是通过在期望失败的情况下抛出异常来进行通信,并且在期望失败的情况下不抛出任何异常来进行通信。
这是在您的问题Assert::assertEquals()
9.5.6通过static::assertThat()
9.5.6 评估IsEqual
9.5.6约束中完成的。
对于该evaluate()
方法,您可以要求返回值,该值将是一个布尔值 then (代码 thentrue
或false
)。
否则会抛出一个ExpectationFailedException
9.5.6,它向测试运行器发出一个失败的断言(期望)信号,它识别测试失败并将测试标记为失败。
PhpUnit 断言是否抛出任何错误代码/成功代码 - 每当断言通过或失败时?
一般来说,当期望不匹配时,他们会抛出。
但是,您通常不会看到它,因为测试运行程序正在处理该信号及其编码含义:
- 如果您的所有期望都匹配,则运行测试方法迭代的结果是成功的。
- 如果其中一个期望仍然不匹配,则运行测试方法迭代的结果是失败。
- 如果您的测试方法没有预期,则认为它是不完整的测试。
推荐阅读
- c# - Linq 按多个值排序
- r - 如何在 90% 置信水平的中位数上下置信限估计中位生存期?
- python - GPR 中的 normalize_y
- machine-learning - tensorflow object-detection api中的数据集类型是什么?
- angular - 如何开发一个简单的网站,在 javascript 中每 3 秒显示一次肯定的肯定
- node.js - 如何将 HTTP POST 请求从 localhost 发送到运行在 AWS EC2 实例上的 nodemailer
- spring - Java Spring JPA 转换为 myBatis
- java - 如何将java输出解析为CSV文件
- html - 当子 div 具有特定的 className 时如何向父 div 添加样式
- loops - 将函数应用于拆分数据集