写点什么

为 Java 和 Flex 编写 Mock 对象

  • 2009-07-11
  • 本文字数:1137 字

    阅读完需:约 4 分钟

近日 Mockito 框架发布了 1.8 rc2 版,InfoQ 有幸采访到了项目创建者 Szczepan Faber 以了解该版本的一些细节信息。

说明:尽管 1.8 最终版尚未发布,但 Szczepan 承诺最终版将与 1.8 RC2 差不多,随时都能发布。

InfoQ:1.8 版中有哪些令人期待的特性呢?

相对于之前的版本来说,1.8 版变化不大,但其中包含的一些便捷特性可以简化开发者的日常工作,其中就有一个 API 可以捕获方法参数以执行进一步的断言,这样我们就可以更高效地对方法参数进行验证了。 我们决定为桩 API 增加别名以与编写单元测试时所采取的行为驱动开发风格进行无缝集成。这意味着我们可以通过新的 given().willReturn() 桩别名轻松读取测试中的 //given //when //then 注释。

该版本的 Mockito 最终还添加了 Partial Mock 特性。就 Partial Mock 是否为一个必要的特性我们争论了很久,最终找到了其实际价值。大家可以通过 http://code.google.com/p/mockito/wiki/ReleaseNotes 查看完整的特性列表。

InfoQ:1.8 之后的路线图如何?

起初我觉得做到 Mockito 1.0 也就算完事了,然而新的想法和改进像潮水一样不断涌现出来,我们就继续投入到了新版本的开发中。这里不得不提的就是那些通过 mockito邮件列表提供反馈和建议的广大用户,衷心的感谢你们。想给某新特性起个名字不是件容易的事,当然了,我们还是会尽力保持 API 的简单性,同时还会继续根据用户反馈进行改进以保持 TDD 循环的快速性与平滑性。

InfoQ:最近你们创建了一个名为 Mockito for Flex 的新项目,这是 Mockito 的官方子项目么?

哦,不是,因为它采取的是完全不同的语言。我想你可以称其为官方拍档,因为 Krzysztof Karczmarczyk 和我一起实现了 mockito-flex。我想 Krzysztof 已经对 mockito-flex 主页上的信息进行了更新。

InfoQ:可否向我们介绍一些好资源以便大家能够快速上手 Mockito,同时还能充分利用 Mockito 提供的这么多特性?

关于 Mock 对象的任何介绍都将有助于概念的掌握。Brett Schuchert 编写了一个 Mockito教程。大家不仅可以从Javadocs 中了解到具体的特性介绍,还能找到所有的文档,包括代码示例。之所以将所有文档都放在Javadocs 中是因为我们想让文档与 mockito.org 网站上的介绍保持一致,同时开发者还能直接从 IDE 中查看所有文档,哪怕是在离线状态下,这很棒。 Mockito 类的那些 Javadocs 是个不错的起始点,大家可以通过这些文档来了解 Mockito 的各种特性。

当前 mockito-flex 的版本是 1.0,提供了如下功能

  • 支持对方法调用和属性访问的验证
  • 支持方法调用和属性访问桩
  • 支持基本的匹配器以及创建新匹配器的扩展 API
  • 集成了 flex unit
  • 基于 asmock-0.3(用于字节码生成和底层的执行处理)

最后,如果你还是个 Python 开发者,那么你可能会对 mockito-python 感兴趣。

查看英文原文: Mocking for Java and Flex

2009-07-11 22:411808
用户头像

发布了 88 篇内容, 共 262.3 次阅读, 收获喜欢 8 次。

关注

评论

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

架构师训练营第一期 - week6

习习

架构设计-学习总结笔记

Xuenqlve

第二周学习总结

刘洋

极客大学架构师训练营

C++ primer -- 第17章 输入,输出和文件

Dreamer

c++

6.7Doris分析案例(二):高可用和集群扩容设计

张荣召

C++ primer --第十一章 使用类

Dreamer

c++

学习笔记--week06

张荣召

Here I come

Dreamer

C++ 第九章 内存模型和名称空间

Dreamer

c++

C++ primer -- 第16章 string类和标准模版库

Dreamer

c++

架构师训练营第一期 - 第六周课后作业

卖猪肉的大叔

极客大学架构师训练营

Ubuntu常见问题解决方案与使用技巧

jiangling500

ubuntu

架构师训练营 第六周作业

haha

架构师一期

架构师训练营第一期 - 第六周学习总结

卖猪肉的大叔

极客大学架构师训练营

6.8Doris分析案例(三):扩容伸缩设计

张荣召

极客大学 - 架构师训练营第一期 - 第六周作业

Black Eyed Peter

极客大学架构师训练营

C++ primer -- 第十二章 类和动态内存分配

Dreamer

c++

C++ primer -- 第十三章 类继承

Dreamer

c++

6.4Zookeeper与分布一致性架构

张荣召

Week 2 :框架设计(学习总结)

Sean Chen

week2- 作业二,学习总结-框架设计

未来已来

架构师训练营第六周学习笔记

一马行千里

学习 极客大学架构师训练营

架构师训练营第 6 周:技术选型 (二)

子青

C++primer-函数探幽

Dreamer

c++

C++ primer -- 第十章 对象和类

Dreamer

c++

C++ primer -- 第十五章 友元,异常和其他

Dreamer

c++

架構師訓練營第 1 期 - 第 06 周總結

Panda

架構師訓練營第 1 期

6.6Doris分析案例(一): NoSQL案例

张荣召

c++ primer -- 第14章 C++中代码重用

Dreamer

c++

6.5搜索引擎的基本架构

张荣召

第二周作业-学习总结

jingx

为Java和Flex编写Mock对象_Java_Craig Wickesser_InfoQ精选文章