2008-09-22 80 views
3

我看来,当我在轨运行我的测试,以得到一个奇怪的错误,他们都失败出于同样的原因,并没有一个在线文档中关于此特定错误似乎特别有帮助:Rails的测试失败,SQLITE3

SQLite3::SQLException: cannot rollback - no transaction is active 

此错误是削弱我来测试我的应用能力,并似乎突然出现了。我有最新版本的sqlite3(3.6.2),最新的sqlite3-ruby(1.2.4)gem和最新的rails(2.1.1)。

回答

1

检查http://dev.rubyonrails.org/ticket/4403它显示了一种解决方法。这可能是你遇到的问题吗?

+0

只是作为一个注:“内存”修补程序也可作为插件 http://nubyonrails.com/articles/2006/06/01/san-francisco-sqlite3-memory-tests-teroids and http://github.com/rsl/memory_test_fix/tree/master – Jean 2008-09-22 21:17:49

0

我曾经有这个问题,但与MySQL。原来我没有创建测试数据库。卫生署! Rails和sqlite自动创建它们,我相信(至少它在Windows中)。

正试图做内存测试吗?如果不存在测试数据库?

0

嘿,伙计们,感谢您的帮助,我其实最终只是删除轨道文件夹,并从版本控制检查背出最后的工作副本。我做了相同的改变,这个问题没有再出现,所以要么我搞砸了,要么导轨出现某种呃逆。谢天谢地,我有版本控制:-)

0

我得到这个错误时运行一个测试与最后一个声明是一个表单提交表单。有一次,我做了一个断言或应该测试,测试正确关闭,我没有重新运行耙分贝:测试:准备