当我在rails中运行我的测试时,我似乎遇到了一个奇怪的错误,它们都因为同样的原因而失败,并且没有一个在线文档对于这个特定的错误似乎特别有帮助:
SQLite3::SQLException: cannot rollback - no transaction is active
这个错误削弱了我测试我的应用程序的能力,似乎突然出现了。我有最新版本的sqlite3(3.6.2),最新的sqlite3-ruby(1.2.4)gem和最新的rails(2.1.1)。
答案 0 :(得分:1)
选中显示解决方法的http://dev.rubyonrails.org/ticket/4403。这可能是你遇到的问题吗?
答案 1 :(得分:0)
我曾经遇到过这个问题,但有MySQL。原来我没有创建测试数据库。卫生署!我相信Rails和sqlite会自动创建它们(至少在Windows中会这样做。)
是否正在尝试进行内存测试?如果没有,测试数据库是否存在?
答案 2 :(得分:0)
嘿伙计们,感谢您的帮助,我实际上最终只是删除了rails文件夹,并从版本控制中检出了最后一个工作副本。我做了相同的更改,这个问题没有再出现,所以要么我搞砸了,要么铁轨有某种打嗝。谢天谢地,我有版本控制: - )
答案 3 :(得分:0)
运行测试时出现此错误,最后一个语句是单击表单提交。一旦我做了断言或者应该测试,测试就会正常关闭,而且我没有必要重新运行rake db:test:prepare