ruby-on-rails – Corey Haines在GoGaRuCo 2011上使用了哪些测试工具和方法?

this video from GoGaRuCo 2011年,Corey Haines展示了一些使Rails测试套件更快的技术.我总结如下:

>将尽可能多的代码放在Rails应用程序之外,放入其他模块和类中
>单独测试,无需加载Rails的开销
>在Rails应用程序中使用它们

但是有几件我不明白的事情.

>他在使用rspec和spn或spna运行测试之间交替(例如,在大约3:50). spn是一个众所周知的工具吗?
>在他对非Rails类和模块的测试中,他包括正在测试的模块或类,但我没有看到他包括像spec_helper这样的东西.他如何获得Rspec?

解决方法

对此感到抱歉. spn和spna是别名我将我的非rails代码添加到rspec的加载路径.除了在命令行中添加-I path_to_code之外,它们没有任何特殊之处.

这些天,我在我的.rspec文件添加了这样的内容

-I app/mercury_app

然后我可以在我的规范的顶部做简单的require’object_name’.

至于不包括spec_helper:这是真的,我没有.当您使用rspec< path_to_spec_file>执行spec文件时,它会被解释,因此您不需要显式地要求rspec.

对于我的db规范这些天,我还构建了一个active_record_spec_helper,它需要active_record,建立与test数据库的连接,并设置database_cleaner;这允许我只需要我的模型在我的spec文件的顶部.这样,我可以针对数据库测试AR代码,而无需加载我的整个应用程序.

我正在使用这些技术工作的客户有兴趣支持一些关于此的博客文章,所以希望它们将在6月中旬开始出现.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...