写点什么

文章:利用 Ruby 简化你的 Java 测试(进阶篇)

  • 2008-09-23
  • 本文字数:562 字

    阅读完需:约 2 分钟

本文是 Productive Java with Ruby 系列文章的第二篇,通过上一篇的介绍,我想大家对如何利用Ruby 进行单元测试有了一个基本的了解,从这里开始,我将和大家一起讨论一些利用Ruby 进行单元测试时的高级话题。

通常,新技术的引入只能降低解决问题的难度,而不是消除问题本身!

通过Ruby 我们可以更高效的处理数据准备的问题,但是真实的世界并不那么简单!随着测试的深入,我们会越发的感觉一不小心就挣扎在“依赖”的原始丛林 中!有时候似乎需要加入无数的jar 包,初始化所有的组件,配置完一切的数据库、服务器及网络的关系,才能开始一小段简单的测试。更痛苦的是这一切是如此 的脆弱,仅仅是某人在数据库中多加了一条数据或者更改了一部分环境配置,你苦心构建的所有测试就全部罢工了!多少次,你仰天长叹:“神啊!救救我 吧…”。可神在那里呢?

引入Ruby 进行Mock 测试可以有效简化单元测试时对各种环境的依赖,但是Mock 也有Mock 自己的问题,例如,它需要你对被测试类的内部细节有一定 的了解,毕竟利用Mock 技术进行测试属于白盒测试。当被测试类的内部实现有所改变而外部接口未发生变化时,原本不该出错的测试方法依旧有被打破的风险。

详细内容,请阅读全文:利用Ruby 简化你的Java 测试(进阶篇)

相关阅读: Productive Java with Ruby 系列文章(一):利用 Ruby 简化你的 Java 测试

2008-09-23 01:211186

评论

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

用RocketMQ这么久,才知道消息可以这样玩

牧小农

RocketMQ

秒杀系统设计demo

Geek_e8bfe4

SpringBoot(二、基础知识)

SpringBoot 2 8月月更

Java基础之网络编程(二)

自然

网络 8月月更

架构实战营模块 9 作业

Naoki

架构实战营

【Java】:二维数组的定义、初始化、长度以及循环遍历等...

翼同学

Java 学习 编程语言 分享 8月月更

[CSS入门到进阶] 用transform后z-index失效了?总结transform的注意事项!

HullQin

CSS JavaScript html 前端 8月月更

架构实战营毕业总结

Naoki

架构实战营

网信办将全面规范打赏连麦等功能,必须监督好平台和MCN机构

石头IT视角

Kubernetes中API安全加固

CTO技术共享

如何安全地移动WSL 2 到另一个驱动器

吴脑的键客

windows WSL2

kubernetes镜像构建和扫描

CTO技术共享

leetcode 560. Subarray Sum Equals K 和为 K 的子数组(中等)

okokabcd

LeetCode 算法与数据结构

数据结构——树(树的基本概念)

工程师日月

8月月更

《博弈论》— 人生何处不博弈

蔡农曰

读书笔记 博弈论

IT运维如何助力企业数字化转型

阿泽🧸

数字化转型 8月月更

Struts2应用详解

No Silver Bullet

应用 Struts2 8月月更

【Go事】一眼看穿 Go 的集合和切片

梦想橡皮擦

Python 爬虫 8月月更

为什么说:被观察者是 push 数据,迭代者是 pull 数据?

掘金安东尼

前端 函数式编程 8月月更

架构师的十八般武艺:高可用

agnostic

容灾

架构设计小结

Geek_e8bfe4

Kubernetes 真的在蚕食云吗

CTO技术共享

用户权限-Linux系统特殊权限

Albert Edison

Linux centos 运维 用户权限 8月月更

Java基础之网络编程(一)

自然

网络 8月月更

IDEA开发Spark应用实战(Scala)

程序员欣宸

8月月更

来聊聊 OpenJDK 和 JVM 虚拟机

HoneyMoose

IPv6过渡技术部署策略与建议

穿过生命散发芬芳

ipv6 8月月更

解密 Flutter 的 const 关键字

岛上码农

flutter ios 前端 安卓开发 8月月更

Prototype以及jQuery和CDN -内容分发网络在使用JavaScript实战运用

恒山其若陋兮

8月月更

文章:利用Ruby简化你的Java测试(进阶篇)_Java_殷安平_InfoQ精选文章