使用PHPUnit和extbase将Fixtures加载到Testdb

时间:2013-01-17 07:44:14

标签: phpunit typo3 fixtures extbase test-data

我在phpunit测试用例中搜索将测试数据加载到MySQL的方法。我使用typo3 4.5并想在我的测试用例中测试我的页面覆盖和一些函数。我不想手工创建所有模型,并希望为每个测试加载一个test-db和一些sql-file。这可能吗?

2 个答案:

答案 0 :(得分:2)

在我们的TYPO3扩展测试中,我们使用$GLOBALS['TYPO3_DB']->exec_INSERTquery()中的测试数据运行setUp()次调用。 tearDown()拨打exec_DELETEquery()

测试数据获取类似“unittest-FOO”的名称,以便我们可以在清理时删除所有“unittest-%”条目。

或者,您可以使用TYPO3的phpunit扩展名 - 它为每个表添加一列,指示记录是否是测试数据。之后清理很容易。

答案 1 :(得分:0)

我通过在我的setup方法中加载一个完整的测试数据库来解决这个问题。这个对我有用。对于某些插入,我将尝试使用

 function setUp() { $this->db->exec("BEGIN"); }
 function tearDown() { $this->db->exec("ROLLBACK"); }

喜欢here