产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

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:321036
用户头像

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

关注

评论

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

数据代码如何“产地直销”,做到持续集成持续发布?

数造万象

【2023】合肥市等保测评有哪些公司?地址在哪里?

行云管家

等级保护 等保测评 等保2.0 合肥

开发者可以选择哪些小游戏分发平台?

FN0

小游戏 小游戏开发 小程序化

大数据开发技术有好的培训机构吗

小谷哥

手游“Lord of Dragons Global”进军P2E市场

科技热闻

学习大数据开发技术能参加培训吗?

小谷哥

深耕数字办公,华为云桌面怎样带来高效办公体验?

路过的憨憨

【5000字长文】从 S3 到 DataZone,亚马逊云科技用16年讲完一个数据的故事

亚马逊云科技 (Amazon Web Services)

亚马逊云科技 Builder 专栏

老板要的物联网可视化大屏,我30分钟就搞定了

华为云开发者联盟

物联网 华为云 12 月 PK 榜

三个延伸打法,撑起华为云桌面的7年领跑

路过的憨憨

「Go框架」http请求处理流程: gin、beego等web框架是如何处理http请求的?

Go学堂

golang 开源 程序员 个人成长 12月月更

无魅友,不魅族!魅族大力推广魅友文化,用行动阐述何为用户共创

Geek_2d6073

转转AB平台的设计与实现

转转技术团队

大数据 A/B 测试

国产ETL 星光不问赶路人 时我不待

weigeonlyyou

oracle Prometheus Clickhouse MySQL 数据库 InfluxDB Cluster

高可用软件什么意思?哪些高可用软件好用?

行云管家

高可用 双机热备 高可用软件

隐私计算之多方安全计算(MPC,Secure Multi-Party Computation)

京东科技开发者

大数据 隐私安全 多方安全 MPC OT

物联网 IOT 设备如何脱离信息孤岛?

eng八戒

物联网 IoT 网络 网络配置 涂鸦智能

DevSecOps 需要知道的十大 K8s 安全风险及建议

SEAL安全

k8s DevSecOps 12 月 PK 榜

今明两天,eBPF 技术探索和 Intel Arch 两大技术 SIG 继续开讲 | 第 57-58 期

OpenAnolis小助手

开源 ebpf intel 龙蜥大讲堂 浪潮信息

丧心病狂,竟有Thread.sleep(0)这种神仙写法?

JAVA旭阳

Java JVM

支持API 9的Sample已上新,速来拿走

HarmonyOS开发者

HarmonyOS

LED显示屏企业需要抓住直播的风口吗?

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家

基于聚类算法的话术挖掘技术及在营销服场景的落地应用

中关村科金

人工智能 大数据 算法 对话机器人 技术实践

企业金融App评测系列——微众银行以App构筑企业金融服务新生态,成为企业的随身数字银行

易观分析

企业 金融 银行

Java高手速成│编写你第一个数据库程序

TiAmo

JDBC 数据库· 12月月更

Code Review到底在关注些什么?

孟君的编程札记

Java CodeReview

大咖说·阿里云教育|“网上浙大”数字化之路

大咖说

数字化 高校

DAG任务调度系统 Taier 演进之道,探究DataSourceX 模块

袋鼠云数栈

开源

那些专注小程序语法编译的跨端开发平台

FinFish

前端框架 跨端开发 跨端框架 前端开发框架 前端开发平台

前端开发培训后可以从事哪些方面的工作

小谷哥

Docker 中的挂载卷

HoneyMoose

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