删除 reply 导致的错误,提交了一个 issus https://github.com/huacnlee/ruby-china/issues/229
先手工删除了有错误的数据,楼主再试试?
我去查查,稍等
1 语法不同
Test::Unit 用 asset_* 断言风格 Rspec 用 should * 风格
2 Rspec 的辅助方法多一些,比如 should include
3 Rspec 可以嵌套上下文,上下文复杂的时候比较有帮助
4 Test::Unit 是 Rails 自带的,没有升级阻碍。rspec_rails 看文档说一些 should 方法其实是对 Test::Unit 的包装。
然后我感觉没别的了,做的是一样的事。
以前读源码记得默认加了 'script‘……
看上去是 3.2.2 变严格了吧。加上 datatype 是好习惯,毕竟 ajax 请求 html , script, json 都是有可能的,服务端无法预设。
https://github.com/chloerei/code_campo
我写 Test::Unit,我觉得 Test::Unit 语法平实,更容易理解。楼主可以参考 code_campo 的 git log。
测试其实就一个逻辑:进行了什么操作,发生了什么效果。简单的测试很多时候很有效,不要把逻辑的复杂和测试的复杂绑定起来,写测试的时候把自己作为第 3 者观察就清晰很多了。
#3 楼 @cqpx http://codecampo.com/topics/84 HTML5,让 Ajax 改变 URL 且支持后退
直接用这个类
注册是 devise 提供的,一不小心忽略了
#8 楼 @tualatrix 有效 URL 里面的中文应该要转义的,chrome 能显示中文是浏览器端的处理,复制出来还是会变成转义字符。比如
我不追求完全覆盖,只要求关键覆盖。
觉得写测试时间太长的原因一是不熟练,二是没有把调试时间一起考虑。
维护别人的项目时候我才会后写测试,自己写都是先写测试。
这两个我都觉得不是好的选择……
我这明天如果没任务也去搞~
我觉得白名单写进 Model 好,不然控制器还得知道 Model 的属性。用了 attr_accessible 之后,控制器知道 role 就行了,相当于打包属性组。