当前位置 : 主页 > 手机开发 > 其它 >

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

来源:互联网 收集:自由互联 发布时间:2021-06-22
我想知道为什么像 PHPUnit include what seems to be repetitive operators这样的单元测试系统只会增加单元测试的开销.我可以理解其中的几种方法,但大多数似乎都浪费时间. public function testPop(array
我想知道为什么像 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.
网友评论