我目前正在使用 selenium 和 Behat 为 PHP 应用程序构建一个自动测试,该应用程序将 MySQL 用于具有 InnoDB 引擎的数据库。数据库大约 50GB,其中包含大量数据。测试运行良好,但目前我在每次新测试运行之前都在努力清理。
由于测试正在插入数据(例如创建用户),我想在每个测试运行之前将数据库置于已知状态。由于数据之间的许多关系,清理脚本非常复杂,没有副作用。
我的问题是,在执行 Behat 功能之前,是否有任何好的做法可以快速将数据库恢复到已知状态(50GB 是很多数据)?