写点什么

Typemock:过去、现在和未来

2009 年 2 月 13 日

InfoQ:创建 Typemock 的原因是什么呢?

Typemock:Typemock 公司成立于 2004 年,在现任 CEO Eli Lopian 发现员工因编写单元测试过于困难而没有实施 TDD(测试驱动开发)的时候,他想创建一个工具来帮助员工变得敏捷。当时,Eli 还是一家大公司的高级开发人员。主要负责产品上市时间的整个过程,他认识到这及其的复杂,而且编写代码时间越来越长也越来越困难。Eli 的 200 人小组花了两到三个月来编码,却耗费了大概九个月来进行测试。当然,这严重影响了产品上市的时间。

Eli 决定找出这种现象的原因。他成立了专门分析代码编写和测试过程的小组,并发现几乎 90% 的 Bug 都可以在开发期间解决。结论是在开发时修正这些 Bug 可以大大缩短整个开发的流程。随后,Eli 开始研究敏捷方法论,TDD 和单元测试来完善编码,测试过程并最终落实到产品。

Eli 是应用程序代码测试开发者中的领军人物。当团队明白了编写单元测试代码的价值以后,他再次强调了原始的假设即编写、学习和实现测试都可能极其耗时。而且,他们也知道把这个流程带入到开发人员众多的小组中会导致他们的工作变得更加复杂。

Eli 成功证明了编写验证代码来进行测试对于提升产品质量来说是一个重要和有价值的过程。同时,他也证明了代码测试的方法和工具不管在哪里都卓有成效。

InfoQ:Typemock Isolator 和竞争对手的区别在哪里呢?

Typemock:对于任意的代码块,Typemock Isolator 添加了可测试特性,使得测试代码更加简单。该特性由动态导向编程 (AOP) 框架添加,所以在设计和测试的时候,你都可以编写代码,对于同类型工具,那需要特定地编码。Isolator 介乎看可以和所有最新的技术一起使用,例如:SharePoint 和 LINQ。

Eli 在家编写了 Typemock Isolator 的第一个版本,并上传到网站,分发给感兴趣的人,而且开发者社区突然间看到了使用 Typemock Isolator 来编写单元测试的好处。研发部门经理可以使用 Isolator 来查看已经编写了多少单元测试,这使得他们对于工作比计划表有了更清晰的了解。在被问及是什么驱使他投身 Mock 框架的开发时,Eli 说:开发者已经意识到单元测试的价值,但常常事倍功半。今天,人们对于 Typemock Isolator 的热情以及他们全心地采用该工具,使得他得到了极大的满足。他说:我享受人们兴高采烈地谈论 Typemock Isolator 并使用它。尝试过 Typemock Isolator 的团队对单元测试中取得的显著成功产生了巨大反响,并且更广泛地采用了 TDD 进行开发。

今天,Typemock 已经是售给小型和大型公司的完善产品。所开发的新功能使得整个开发流程更加敏捷,并可集成到开发环境中。用户对于它的表现非常满意,并形成了有影响力的 Typemock 社区。社区的成员分享产品信息,完善产品并开发外接程序,以及在敏捷环境中予以实现,更重要的是,Typemock 使得编码测试更加快速和准确。

InfoQ:开发者采用 Typemock 的原因是什么呢?

Typemock:Typemock 的价值不仅仅反映在用户的热情上,也有明确的数据来支持 Typemock 的成功。Corillian 公司(www.corillian.com),在线银行、支付和保险解决方案的市场领先提供商,采用 Typemock 作为完善软件质量和引入编写自动单元测试的敏捷实践的重要手段。结果让人大吃一惊,采用 Typemock 的短短两个月内,测试的数量提高了 500%,测试覆盖范围提升了 50%,测试比编码快 25%,越来越多的公司开发人员使用它来进行测试。

“它就如广告说的一模一样。它使得我们的测试比以前更快更简单。” Scott HanselmanB

Corillian 公司的前任首席架构师

有些公司甚至报告说在使用了 Typemock,它们的代码送往 QA 后,竟然没有发现一个 Bug!

InfoQ:未来 Typemock 还有那些新功能呢?

Typemock:Typemock Isolator 经常更新,不断添加更多的功能。事实上,新发布的版本有了新的 API。未来的版本将与 Visual Studio 和 Visual Studio Team System 更好的集成。特定平台的插件,例如:SharePoint 和数据库等也在计划中。Isolator 可使得处理软件的方式更加简单,也会单独支持 mscorlib。

Typemock 正朝着 Eli 所期望的方向发展:改变单元测试的世界,使得开发者朝着敏捷和 TDD 方向转变。

Typemock 的格言就是“帮助开发者更好更快的完成工作,改善代码,更顺利地进入 TDD 和敏捷的世界”。要获取 Typemock 的更多信息,请访问 www.typemock.com

阅读英文原文 Typemock: Past, Present and Future


给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家加入到 InfoQ 中文站用户讨论组中与我们的编辑和其他读者朋友交流。

2009 年 2 月 13 日 02:151853
用户头像

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

关注

评论

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

阿里P9技术专家强烈推荐:Java程序员进阶必读的进阶书籍清单

Java成神之路

Java 程序员 架构 面试 编程语言

华为云&跟谁学|华为云API入门学习赛·AI人脸识别 未来工程师梦想的起点

DT极客

「五大常用算法」一文搞懂分治算法

bigsai

算法 分治算法;

框架设计

raox

极客大学架构师训练营

3本书免费学习数据科学与统计学

计算机与AI

统计学

AWS IoT Core设计解析

soolaugust

边缘计算 AWS 工业4.0 工业物联网 iiot

接口测试之post常见数据提交方式

测试人生路

post 接口测试

AOT星辰生态系统APP开发|AOT星辰生态软件开发

开發I852946OIIO

系统开发 现成系统

2020亚马逊“黑五”再次成为亚马逊史上最大的年终全球狂欢

爱极客侠

为什么short、byte会被提升为int?及基本类型的真实大小

烫烫烫个喵啊

Java JVM

2020年最全Java高频面试题整理(含答案),助你快速复习多手准备拿下满意的offer!

Java成神之路

Java 程序员 架构 面试 编程语言

基于SpringBoot+MyBatis+Docker实现部署电商系统,分享项目源码

Java成神之路

Java 程序员 架构 面试 编程语言

数据结构与算法总是不得门而入?来看看我是怎么学的吧

linux亦有归途

算法 C/C++ 数据结构与算法 算法工程师

年轻人,快来看看分布式与集群的区别是什么?

程序员小灰

redis 分布式 后台开发 集群 Linux服务器开发

4面阿里余额宝Java技术岗面试题总结:Redis+线上调优+G1+Hash+二叉树

Java成神之路

Java 程序员 架构 面试 编程语言

稳坐开发领域霸主之位,揭秘C语言无可取代的几大原因!

华为云开发者社区

c go rust

将项目发布到 Homebrew 官方仓库

郭旭东

macos brew homebrew

了不起的 Deno:带你极速获取各大平台今日热榜

华为云开发者社区

Java 安全 deno

专访阿里云 Serverless 负责人:无服务器不会让后端失业

阿里巴巴云原生

Serverless 微服务 云原生 CloudNative 无服务器

周小川深度解读:DC/EP和数字人民币e-CNY

CECBC区块链专委会

数字人民币

高并发的核心 - AQS【哪些琐是基于AQS来实现的】

Java架构师迁哥

数字货币管理三大新模式

CECBC区块链专委会

数字货币

SpringBoot整合Mybatis-Plus 实战之动态SQL,Mybatis最拿得出手的功能之一

比伯

Java 编程 架构 面试 计算机

江西吉安:一个上了区块链柚子的真情告白

CECBC区块链专委会

区块链 蜜柚

开发技巧 | mPaaS 小程序自定义事件,如何取消注册?

蚂蚁集团移动开发平台 mPaaS

小程序 API mPaaS

牛批!清华毕业的Java大牛用一个坦克大战游戏项目来演示设计模式

Java成神之路

Java 程序员 架构 面试 编程语言

深入解读:KubeVela 与 PaaS 有何不同?

阿里巴巴云原生

阿里云 开源 容器 云原生 CloudNative

架构师训练营 -week11-作业

大刘

极客大学架构师训练营

LiteOS基于Sensorhub的超声波模组移植

华为云开发者社区

物联网 LiteOS 超声波

「linux」Socket缓存是如何影响TCP性能的?

linux大本营

Linux 后台开发 socket 架构师 TCP/IP

面对日益严峻的网络安全问题,CDN可以做什么?

巨侠说

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

Typemock:过去、现在和未来-InfoQ