我的PHPUnit测试:
public function addWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}
我的代码:
public function add($a, $b)
{
return $a + $b;
}
我遇到的问题(我不明白)是当我运行我的测试时,它仍然是真实/正确的。甚至认为预期的结果应该是-4。
答案 0 :(得分:1)
你的考试没有通过。它甚至没有被执行,因为它不是一个测试。
默认情况下,PHPUnit会将only the public methods whose names start with test
视为测试。
告诉PHPUnit方法是测试的另一种方法是在其docblock中使用@test
annotation。
因此,为了进行测试,您可以将function addWithNegative()
更改为:
public function testAddWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}
或
/**
* @test
*/
public function addWithNegative()
{
$result = $this->calculator->add(-2, -2);
$this->assertEquals(-5, $result);
}