写点什么

RSpec 1.1 - BDD 拥趸者们的盛宴

  • 2007-12-18
  • 本文字数:919 字

    阅读完需:约 3 分钟

Ruby 社区最近发布了一大批重量级的成果。我们刚刚在 12 月 7 日迎来了 Rails 2.0 发布版。而现在, David Chelimsky 宣布 RSpec 1.1 正式发布

这一新的发布版可以很好的和 Rails 2.0 进行协作。RSpec 的主干版本一直与 EdgeRails (Rails 的开发版,也就是尚未发布的版本)保持同步,那些同时为 EdgeRails 和 RSpec 主干版本贡献力量的开发者也不断的帮助 RSpec 团队解决二者间的各种冲突。这是此次发布版的一大特点。此外,RSpec 1.1 还有其他一些引人入胜之处。

RSpec 1.1 中新加入的主要特性之一是story runner。Story 的概念出自于 Dan North 的 rbehave tool (这一工具已经被整合在 RSpec 之中)。Story 以可执行的形式给出某一应用的需求陈述。对于 Rails 开发者,RSpec 1.1.0 还包含了 RailsStory。这一机制用来充当“传统”Rails 中集成测试(使用 Test:Unit)的角色,同时也可以在其他诸如验收测试中发挥作用。

对于那些已经使用了 Test::Unit 的 Rails 项目来说,应用 RSpec 的一个不便之处是如何进行从 Test::Unit 到 RSpec 的转换。RSpec 现在提供了一个简单易行的解决方案。面向 Rails 的 RSpec 运行时实际上已经基于 Test::Unit 进行了一年多的构建工作。RSpec 1.1.0 中引入了 Spec 模块,该模块可以被 Test::Unit 中的 TestCases 所包含。采用这一方式,您就可以逐渐的从 Test::Unit 过渡到 Rspec 格式,渐进的完成 TestCases 到 example groups、tests 到 examples 和 assertions 到 expectations 的转换。这使得您可以对已有 TestCases 进行转换,并在整个过程中保持被修改的 TestCases 始终可以正确的运行。

另一个主要的新特性是可以通过嵌套方式来组织 example groups。嵌套中的“父 - 子”关系可以自然的表达泛性规范和对其进行了变更的子规范。在许多情况下,比起 RSpec 已有的公共规范,使用子规范更加合适。

总而言之,无论对于 RSpec 已有使用者,还是未来的潜在用户,RSpec 1.1 的发布都是一个重大新闻。

您在用 RSpec 吗?如果还没有,为什么不试一试呢?

译注:原文标题中的 Step Up 指代 2006 年拍摄的一部《舞出我人生》的影片。当时该片以一千万小成本制作,冲出了一亿美元的亮眼票房,获得了很大成功。如果要访问这部电影的官方主页,可以点击这里

2007-12-18 07:321103
用户头像

发布了 24 篇内容, 共 33364 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

AI+无代码助力企业供应链优化

明道云

对大模型和AI的认识与思考

AIWeker

AI 总结 大模型 AIGC GPT

概念回顾:QUIC 和 HTTP/3

NGINX开源社区

TLS udp 数据流 QUIC HTTP/3

Axure RP 10中文授权版下载

Rose

原型设计 Axure RP 10 汉化版 Axure RP 10 下载 Axure RP 10授权

Waves 14混音效果全套插件 附Waves mac破解补丁

Rose

Waves 14破解教程 Waves 14 最新版 Waves 14 Complete破解 后期混音

sublime text 中文破解版 附sublimetext注册码 Mac/win 文本代码编辑器

Rose

代码编辑器 mac软件下载 Sublime Text 4 破解版 Sublime Text注册码

2023年11月文章一览

codists

聊点写作配图那点破事儿

6点无痛早起学习的和尚

写作 21 天技术人写作行动营

AlDente Pro激活码 v1.24 Macbook充电限制软件

Rose

AlDente Pro破解版 AlDente 激活码 Macbook充电限制软件

【亲测有效】Sketch for mac v99.1中文一键安装破解版

Rose

mac软件下载 矢量绘图设计 Sketch 99 Sketch中文破解

beyondcompare4永久激活密钥 及Beyond Compare 4破解方法

Rose

mac软件下载 文件同步对比工具 Beyond Compare 4 注册版 Beyond Compare密钥

Navicat Premium 15永久激活教程 Mac/win 数据库管理软件

Rose

数据库管理工具 Navicat Premium破解版 Navicat Premium 15中文版 Navicat 数据库下载

C 语言函数:入门指南

小万哥

c c++ 程序员 后端 软件开发

【云原生•监控】基于Prometheus的云原生集群监控(理论+实践)-02

Reactor2020

监控 Prometheus kubernetes 运维

多链铭文聚合协议20Exchange将为Ordi、SATS持仓用户快照空投

BlockChain先知

多链铭文聚合协议20Exchange将为Ordi、SATS持仓用户快照空投

石头财经

文心一言 VS 讯飞星火 VS chatgpt (155)-- 算法导论12.3 2题

福大大架构师每日一题

福大大架构师每日一题

JVM 小科普:Java 程序背后的老大哥

Java 工程师蔡姬

Java 程序员 JVM 21 天技术人写作行动营

成功的在线视频流的主要特征是什么?

3DCAT实时渲染

实时云渲染 云流化

【云原生•监控】基于Prometheus的云原生集群监控(理论+实践)-01

Reactor2020

监控 Prometheus kubernetes 运维

32 | 字符串匹配基础(上):如何借助哈希算法实现高效字符串匹配

鲁米

50mA、24V、超低 IQ、低压降稳压器

芯动大师

明道云在戴斯克,从业务整合到高效管理的秘诀

明道云

多链铭文聚合协议20Exchange将为Ordi、SATS持仓用户快照空投

大瞿科技

以太坊 NFT 市场激增:为什么要在 2024 年推出 NFT 市场?

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

FxFactory 8 Pro:打造专业视觉效果的利器

Rose

视频特效插件 FxFactory 8 pro

达芬奇DaVinci Resolve Studio 18:视频后期处理的全能神器

Rose

达芬奇18破解版 DaVinci Resolve Studio 达芬奇调色软件 DaVinci18密钥

【云原生•监控】基于Prometheus的云原生集群监控(理论+实践)-03

Reactor2020

监控 Prometheus kubernetes 运维

极狐GitLab CI/CD 变量黑魔法之自定义变量

极狐GitLab

DevOps gitlab 变量 CI/CD gitlab ci

如何在 Parallels Desktop for Mac 中备份、恢复或转移 Windows 虚拟机

Rose

Mac虚拟机下载 Parallels Desktop 19 Pd虚拟机破解版下载 Parallels 永久密钥

RSpec 1.1 - BDD拥趸者们的盛宴_Ruby_Rick DeNatale_InfoQ精选文章