我正在为API创建测试。我想设置数据库并对每个测试进行清理。问题是我的数据库非常复杂和庞大,所以我想知道是否有办法做一个完整的设置和清理整个测试数据库,这不是太重。感谢您的建议。如果你需要更多细节,请告诉我。如果这有帮助,我使用phpunit进行测试,并使用symphony作为我的框架。在测试Postgress和PHP后设置和清理数据库
0
A
回答
1
这对模板数据库非常简单。
您可以创建并填充所需的测试数据库,我们称之为test_template
。
然后确保没有人可以连接:
ALTER DATABASE test_template ALLOW_CONNECTIONS false IS_TEMPLATE true;
然后用
CREATE DATABASE test123 TEMPLATE test_template;
创建测试数据库清理,你只是删除数据库。您必须确保没有任何人连接,使用功能pg_terminate_backend
杀死任何剩余的连接。
+0
谢谢Laurenz,这非常有帮助。我使用了这个,之后使用了pg_restore来维护测试数据库的清洁。 – Eli
相关问题
- 1. 如何在运行UI测试前后设置和清理我的数据库
- 2. 在Node.js测试后清理数据库
- 3. JUnit测试后清理数据库。
- 4. Selenium测试后的数据库清理
- 5. Rails的数据库测试和清除
- 6. 测试设置设置和清理脚本
- 7. 在Rails 3上用Rspec和MongoID清理或重置测试数据库
- 8. 地理位置和PHP和数据库
- 9. 在node.js中测试后清理数据库
- 10. 后卫和RSpec - 不喜欢我postgress:测试证书在database.yml中
- 11. 在Django中设置测试数据库
- 12. 数据清理和数据库存储
- 13. 硒和数据库测试
- 14. RubyOnRails4:测试和数据库
- 15. 配置设计数据库和经理
- 16. 在TestNG中为并行测试初始化和清理每个测试数据
- 17. 如何使用pow和capybara-webkit设置测试数据库?
- 18. CakePHP和Simpletest:在每次测试运行后重置数据库数据?
- 19. 取消测试后清理
- 20. 设置JUnit测试数据库
- 21. Symfony 3设置测试数据库
- 22. Codeception:从数据库清理测试数据
- 23. 清理MsUnit测试之间的SQLCompact数据库中的数据
- 24. 是否可以向bool类添加测试和设置,测试和清除?
- 25. PostgreSQL在线和测试数据库
- 26. Sitecore清理代理和数据库清理
- 27. 数据库清理mongomapper和黄瓜
- 28. 数据清理,验证和测试驱动开发
- 29. 在UI验收测试后清理向数据库添加的记录
- 30. PHP MySQL数据库测试
如何使数据库复制和每次测试后,你可以覆盖刚刚使用原始(其他)的数据库。你可以快速克隆它,例如从phpMyAdmin。 – MilanG
感谢@MilanG的快速响应。我也想过。事情是这个测试会被其他人使用,所以我需要在测试之前设置它。我正在寻找一种方法来使用php上传整个sql文件,并且不会因为数据库有许多表和大量数据而在系统上过于沉重。那拉斯部分是相对的,但让我说我的系统很大。 – Eli
然后你可以有mysql数据库转储,然后从php调用console mysql命令将该转储导入到db。所以任何时候你想“重置”你的表只需执行“exec”或类似的命令来调用mysql来重新导入数据库。 – MilanG