我有这段代码:
public function checkKeyConstraint($key) {
if ($this->hasKey($key)) {
throw new Exception('Key already exists '.$key);
}
return $this;
}
此外,我有两个带有数据提供程序的PHPUnit测试方法,一个用于现有密钥,另一个用于不存在。 问题是代码覆盖率工具显示1}} 行作为未执行。
PHP_CodeCoverage 1.1.3,PHPUnit 3.6.12,PHP 5.4.4,xdebug 2.2.1-5.4-vc9
UPD:测试方法和数据提供者
throw new Exceptions('Key already exists '.$key);
答案 0 :(得分:0)
testCheckKeyConstraintExistent
方法中我检查整个对象,而不是它的关键。它应该改写为:
public function testCheckKeyConstraintExistent(Key $key) {
$this->assertEquals(self::$object, self::$object->checkKeyConstraint($key->_id()));
$this->fail();
}