How to rollback commits in Behat functional tests with Symfony2 and Doctrine?

守給你的承諾、 提交于 2019-12-11 05:46:27

问题


I'm writing functional tests with Behat and Mink in a Symfony2 application.

I make use of the data that's already in the database to make the tests instead of adding fixtures (a lot would be needed).

Therefore, I can't use a SQLite database only for the test environment as data would not be available.

My tests work fine, but data is persisted in the database when tests are run.

How can I automatically clean up data that's been persisted with Doctrine after a scenario is run?

I can't use a transaction as functional tests involve page redirections (e.g. the form is filled and posted to an other Symfony2 action).


回答1:


if you're persisting data I see no way to automatically revert everything. I would simply make a copy of the database, do the tests on it and drop it afterwards.



来源:https://stackoverflow.com/questions/17195474/how-to-rollback-commits-in-behat-functional-tests-with-symfony2-and-doctrine

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!