9月7日-8日,相约 2023 腾讯全球数字生态大会!聚焦产业未来发展新趋势! 了解详情
写点什么

用 Ruby 和 JtestR 来促进 Java 测试

  • 2008-01-10
  • 本文字数:712 字

    阅读完需:约 2 分钟

用 Ruby 来完成脚本任务是很方便的,这使得 Ruby 成为开发测试套件的强有力的候选人。直到最近,还没有真正独立的用 Ruby 来测试 Java 的框架。 Ola Blini (JRuby 团队的成员)和 Anda Abramovici 开发了 JtestR ,使得开发者可以用 Ruby 来测试 Java。这个项目主要是一些由 JRuby 集成在一起的 Ruby 库套件。这其中也包括在 Ruby 领域中非常有名的库: RSpec (用于行为驱动开发), mocha (用于 mock 与 stub), dust (描述性程序块语法测试定义,descriptive block syntax test definition),测试 / 单元以及 ActiveSupport (Ruby 工具类)。

你可以这样写测试用例(RSpec 非常聪明):

import java.util.HashMap<p>describe "An empty", HashMap do</p><br></br> before :each do<br></br>  @hash_map = HashMap.new<br></br> end<br></br> it "should be able to add an entry to it" do<br></br>  @hash_map.put "foo", "bar"<br></br>  @hash_map.get("foo").should == "bar"<br></br> end<br></br> it "should return a keyset iterator that throws an exception on next" do<br></br>  proc do<br></br>  @hash_map.key_set.iterator.next<br></br>  end.should raise_error(java.util.NoSuchElementException)<br></br> end<br></br>end JtestR 可以作为 Ant 的一个任务,支持与 Ant , buildr 和 Maven2 的集成。由于 JtestR 依赖于 JRuby(JRuby 正在进行密集的开发),如果你经常运行你的测试,你应该建立服务器 Ant 任务来避免 JRuby 过长的启动时间(在入门教程中将有进一步的描述)。

JtestR 目前是 0.1.1 版本,还处于早期阶段,欢迎你的反馈来指导它将来的发展方向。

查看英文原文: Boost your Java Test with Ruby and JtestR

活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2008-01-10 09:08601
用户头像

发布了 47 篇内容, 共 94132 次阅读, 收获喜欢 2 次。

关注

评论

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

业内首家!百度智能云智慧金融业务通过ISO37301合规管理体系认证

百度开发者中心

黄金VS比特币:谁更有吸引力?

CECBC

如何限制Linux终端中tree命令递归文件列表的深度?

Ethereal

Linux这5大磁盘分区工具,绝了!

Ethereal

Flutter 设置应用主题色和字体

岛上码农

flutter ios 安卓 移动端 3月月更

阿里巴巴如何提升构建的效率 | 阿里巴巴DevOps实践指南

阿里云云效

阿里巴巴 阿里云 CI/CD 持续交付 构建工具

培训第二弹!全国大学生智能汽车竞赛百度竞速组预告

百度开发者中心

2022年2月云主机性能评测报告

博睿数据

VuePress 博客优化之增加 Vssue 评论功能

冴羽

JavaScript Vue 前端 vuepress vssues

什么是单臂路由器?如何配置单臂路由?

Ethereal

见证中国云势力崛起!博睿数据实力入围2021~2022 Cloud 100 榜单

博睿数据

DSTC10 赛道最佳论文揭晓!文心 PLATO 再获殊荣

百度开发者中心

昆仑分布式数据库独特的变量读写功能介绍

KunlunBase昆仑数据库

数据库 读写分离

Hadoop HDFS 3.3.1分布式存储搭建

KunlunBase昆仑数据库

国产数据库

开发者们看过来~填问卷参与抽奖,双重周边奖励仅限本周!

InfoQ写作社区官方

OpenHarmony 热门活动

毕业设计:架构实战营模块9

Poplar89

「架构实战营」

干货分享 | 推荐两款好用的企业文档管理软件

小炮

如何基于制品元数据提升交付效率 | 阿里巴巴DevOps实践指南

阿里云云效

云计算 阿里云 云原生 软件开发 持续交付

视频质量评价VMAF,为何让人又喜又忧?

微帧Visionular

视频编码

一文了解路由平台的 Cisco IOS 和 IOS XE 命名约定,看这篇就够了!

Ethereal

Meetup预告|面向云原生的架构及演进

云智慧AIOps社区

开源 云原生 AIOPS 智能运维

吉利控股集团与百度深化战略合作

百度开发者中心

干货|性能提升密钥,由代码细节带来的极致体验

SphereEx

Apache 数据库 开源 ShardingSphere SphereEx

建设领先的AI原生云,百度智能云落地新一代高性能AI计算集群

百度开发者中心

阿里巴巴在开源压测工具 JMeter 上的实践和优化

阿里巴巴云原生

Apache 阿里云 云原生 Jmeter

区块链发展趋势与思考

CECBC

Gartner发布服务器虚拟化市场指南 灵雀云作为唯一本土容器厂商入选

York

容器 云原生 数据中心

社区知识库|常见问答 FAQ 集合第 5 期:Broker、Topic、Pulsar 客户端及消息限制等相关问题

Apache Pulsar

开源 架构 云原生 Apache Pulsar 社区

投稿开奖丨轻量应用服务器征文活动(2月)奖励公布

阿里云弹性计算

轻量征文

什么是广域网WAN?学WAN,看这篇文章就够了!

Ethereal

TGIP-CN 036 报名|预见 2022 · Apache Pulsar 技术进展与社区动态

Apache Pulsar

开源 架构 云原生 Apache Pulsar 社区

  • 扫码添加小助手
    领取最新资料包
用Ruby和JtestR来促进Java测试_Java_Sebastien Auvray_InfoQ精选文章