我在Ruby中运行功能测试,但他们失败了。
我是通过运行rake test:functionals
1) Failure:
test_should_create_user(UsersControllerTest) [test/functional/users_controller_t
est.rb:20]:
"User.count" didn't change by 1.
<3> expected but was
<2>.
14 tests, 19 assertions, 1 failures, 0 errors
Errors running test:functionals! #<#<Class:0x472b82e5>: Command failed with stat
us (1): [c:/jruby-1.6.7.2/bin/jruby.exe -I"lib;test...]>
我已经检查了日志文件,查找SQL错误,但一切似乎都没问题。
知道为什么会失败?
答案 0 :(得分:0)
我假设你没有更改测试文件,它是自动生成的。
在这种情况下,由于没有SQL错误,测试和/或控制器一定存在问题。
假设控制器没有问题,可能的问题是:
您的测试发送给控制器的属性值无效(由于模型中的验证)
测试无权创建对象(如果您使用的是设计,则需要在测试中登录)
否则,控制器可能有错误。