我只是在跑黄瓜;我不确定它运行的是哪个数据库,但是当我使用selenium(通过capybara)运行它时,它肯定会使用开发数据库。我如何确定选择了测试数据库,以及如何与测试数据库进行交互以确保它处于正确的状态?
答案 0 :(得分:1)
默认情况下,Cucumber使用测试环境和测试数据库。你应该在你的database.yml中看到这个:
cucumber:
<<: *test
这意味着'从测试数据库中获取设置并用于黄瓜'。
要使测试数据库处于正确状态,请使用rake命令复制开发数据库以备执行:
rake db:test:clone_structure
我还建议查看DatabaseCleaner gem,它广泛用于测试。您可以使用黄瓜进行设置,以便截断或使用数据库事务来确保每个方案都从干净的数据库状态开始。