对于Symfony2功能测试,验证数据库内容的最佳实践是什么?

Nai*_*bis 5 php phpunit automated-tests functional-testing symfony

我看到有很多方法可以将夹具数据加载到数据库中.但在功能测试之后,确认写入数据库的内容的最佳/标准方法是正确的?

phpunit包有一个完整的部分,你可以在其中加载数据集,然后使用assertTablesEqual()之类的东西来比较表的内容和预期的内容.但这似乎在Symfony2下不可用,我找不到任何其他标准方法.

别人怎么解决这个问题?

小智 1

Symfony2默认使用ORM主义,或者你可以设置其他数据库管理(例如MongoDB)。检查app\config\parameters.php文件以设置数据库连接并app\config\config.php检查/设置管理类型。使用 ORM,您不需要检查 phpunit 包等很多内容,因为它已经集成到协议中以及更多内容中。请查看此处了解更多详细信息

如果您想加载数据夹具,您可以导出实际数据库来保存它,或者创建一个仅用于测试的新数据库,然后通过app\config\parameters.php像这样创建一个新数据库来切换数据库app\config\parameters_dev.php。在这种情况下,网站和您的本地版本将不会使用相同的数据库。您还可以编辑app\config\parameters.php并阻止将其与文件一起上传 .gitgnore