单元测试 – 为什么单元测试系统包含无用的断言方法?

前端之家收集整理的这篇文章主要介绍了单元测试 – 为什么单元测试系统包含无用的断言方法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道为什么像 PHPUnit include what seems to be repetitive operators这样的单元测试系统只会增加单元测试的开销.我可以理解其中的几种方法,但大多数似乎都浪费时间.

public function testPop(array stack)
{
    this->assertEquals('foo',array_pop(stack));
    this->assertEmpty(stack);
}

vs原始代码(更短更快)

public function testPop(array stack)
{
    this->assert('foo' == array_pop(stack));
    this->assert(empty(stack));
}

这些方法是否适用于那些不理解编程语言的人仍然可以编写单元测试?我相信这个项目的作者比我聪明,所以必须有一个理由.

解决方法

这些函数通常提供更有用的输出.例如,assertEquals测试可以告诉您预期值和实际值,并且它们不相等.

例如,以下代码

this->assertEquals(1,0);

会产生这样的输出

Failed asserting that 0 matches expected 1.

猜你在找的设计模式相关文章