测试库增强与断言支持及更多确认类型添加
1. 增强测试库以支持断言
在测试过程中,我们需要检查实际结果是否符合预期,并根据不同条件采用不同的确认方式。当前的测试代码存在一些问题,例如在检测到问题时抛出一个整数,这会导致测试结果显示为意外异常,不能清晰地说明具体失败原因。
下面是一个关于及格分数测试的示例代码:
TEST("Test passing grades")
{
bool result = isPassingGrade(0);
if (result)
{
throw 1;
}
result = isPassingGrade(100);
if (not result)
{
throw 1;
}
}
在这个测试中,我们希望确认分数为 0 时结果为 false(不应及格),分数为 100 时结果为 true(应及格)。但这里的 if 条件与我们要确认的内容相反,且抛出整数的方式不利于测试结果的描述。
为了解决这些问题,我们可以进行如下改进:
- 抛出更有意义的异常 :将抛出整数改为抛出 BoolConfirmException
,该异常可以提供更详细的失败信息。
TEST("Test passing grades")
{
bool result = isPassingGrade(0);
if (result