PHPUnit - 在child中实现抽象方法

时间:2017-01-19 10:25:38

标签: php phpunit

我有一组只读测试和一些修改数据的测试(插入/更新/删除)。我想备份我的表,因此每个测试类都会有一个他们将要修改的关联表的列表。这只是测试数据。

我因此想到了这个:

abstract class DataAlteringTestBase extends PHPUnit_Framework_TestCase
{

  protected function setUp()
  {
    echo "backing up tables: " . $this->GetAlteredTableNames();
  }

  public abstract function GetAlteredTaleNames();

}

其中一个子类:

class DataAlteringTest extends DataAlteringTestBase
{
  function GetAlteredTaleNames()
  {
    return array("some_table");
  }

  public function testDummyStuffChild()
  {
    $this->assertTrue(true);
  }

}

我认为,问题是PHPUnit尝试从抽象类而不是其子类中获取方法实现。

  

调用未定义的方法DataAlteringTest :: GetAlteredTableNames() -   实现... \ tests \ DataAlteringTestBase.php:6 - 摘要   类

如何解决?或者首先在PHP / PHPUnit中实现它的想法是否有问题?

1 个答案:

答案 0 :(得分:-2)

你有一些拼写错误 - 你在某些地方写过GetAlteredTaleNames(),在其他地方写过GetAlteredTableNames()