我有两个表:cities
和provinces
,我在开发和测试中直接从sql文件填充到数据库,而不使用Ruby中的迁移或种子文件。直接SQL。
每次测试与Selenium一起运行时,数据库都会被删除,因此我需要运行mysql (...) database_test < fill_cities_provinces.sql
我该如何解决这个问题?我可以在测试中制作两张不可擦除的表吗?
我注意到如果方案标有@javascript
,就会发生这种情况。否则,如果它使用默认驱动程序,则该表的内容不会被删除。
答案 0 :(得分:0)
我假设您在测试期间使用DatabaseCleaner来清理数据库。以下策略应该有所帮助
DatabaseCleaner.strategy = :truncation, {:except => %w[cities provinces]}