我不理解phpunit函数
我的PHPUnit测试:我不理解phpunit函数,php,phpunit,Php,Phpunit,我的PHPUnit测试: public function addWithNegative() { $result = $this->calculator->add(-2, -2); $this->assertEquals(-5, $result); } 我的代码: public function add($a, $b) { return $a + $b; } 我的问题是(我不明白的是)当我运行测试时,它仍然是正确的。甚至认为预期结果应该是-4。你的测
public function addWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}
我的代码:
public function add($a, $b)
{
return $a + $b;
}
我的问题是(我不明白的是)当我运行测试时,它仍然是正确的。甚至认为预期结果应该是-4。你的测试没有通过。它甚至没有被执行,因为它不是一个测试 默认情况下,PHPUnit将这些测试视为测试。 告诉PHPUnit方法是测试的另一种方法是在其docblock中使用 因此,为了使其成为测试,您可以将
函数addWithNegative()
更改为:
public function testAddWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}
或
将此函数
assertEquals()
放在上面的代码中。您是否已检查此测试是否正在运行?可能是您的套件通过了测试,但由于某种原因,此测试没有运行。您是否可以将一个var\u dump
也放进去以验证结果?我知道答案应该是-4,但这不要紧。如果测试正在运行,你的意思是什么?这是Sebastian Bergmann和贡献者的测试输出PHPUnit 6.5.5。运行时:PHP7.0.8配置:/Users/user/Project/training/phpUnitTutorial/phpunit.xml。。。。。。。。。9/9(100%)时间:48毫秒,内存:4.00MB OK(9个测试,9个断言)
谢谢,我甚至没有注意到。
/**
* @test
*/
public function addWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}