我喜欢偶尔为占位符设置空函数(主要是空构造函数,因为它有助于避免构造函数的意外重复,因为我的团队知道必须总是在某处)。
我也喜欢为一个班级的每个方法至少进行一次测试(主要是因为这是让我的团队反对的一个很好的简单规则)。
我的问题很简单:我们应该在这些空测试方法中加入什么来防止“无测试”警告。
我们可以做$ this-> assertTrue(true),我知道它会正常工作。但是,我想知道是否有更多的官方和正确的触摸(最好是某些东西,因此该方法不计入测试运行的数量,人为地膨胀它一点)。
感谢。
答案 0 :(得分:4)
试试这个:
/**
* @covers Controllers\AdminController::authenticate
* @todo Implement testAuthenticate().
*/
public function testAuthenticate()
{
// Remove the following lines when you implement this test.
$this->markTestIncomplete(
'This test has not been implemented yet.'
);
}
答案 1 :(得分:0)
您在函数上尝试反射类并确保该方法存在。然后测试可能只是该方法存在(空或不存在),它将在没有警告的情况下通过。
class MethodExistsTest extends \PHPUnit_Framework_TestCase
{
protected $FOO;
protected function setUp()
{
$this->FOO = new \FOO();
}
/**
* @covers \FOO::Bar
*/
public function testEmptyMethodBarExists()
{
$ReflectionObject = new \ReflectionObject($this->FOO);
$this->assertTrue($ReflectionObject->getMethod('Bar'));
}
/**
* @covers \FOO::__construct
*/
public function testConstructorExists()
{
$ReflectionObject = new \ReflectionObject($this->FOO);
$this->assertNotNull($ReflectionObject->getConstructor());
}
}