我看到有很多方法可以将夹具数据加载到数据库中。但是在功能测试之后,确认写入数据库的内容正确的最佳/标准方法是什么?
phpunit 包有一个完整的部分,您可以在其中加载数据集,然后使用 assertTablesEqual() 之类的东西将表的内容与预期内容进行比较。但这在 Symfony2 下似乎不可用,而且我找不到任何其他标准方法。
其他人是如何解决这个问题的?
最佳答案
Symfony2 默认使用 doctrine ORM,或者你可以设置其他数据库 gestion(例如 MongoDB)。检查 app\config\parameters.php
文件以设置数据库连接,检查 app\config\config.php
以检查/设置 gestion 类型。使用 ORM,您不需要像 phpunit 包那样检查很多东西,因为它已经集成到协议(protocol)中等等。 Check here for more details .
如果要加载datafixtures ,您可以导出您的实际数据库以保存它,或者创建一个仅用于测试的新数据库,并在 app\config\parameters.php
中通过创建一个像这样的新数据库来切换数据库 app\config\parameters_dev.php
。在这种情况下,该网站和您的本地版本不会使用相同的数据库。您还可以编辑 app\config\parameters.php
并阻止使用 .gitgnore
文件上传它。
关于php - 对于 Symfony2 功能测试,验证数据库内容的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33575377/