当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

Karam与TDD

发表于: 2014-08-25   作者:bijian1013   来源:转载   浏览:
摘要: 一.TDD         测试驱动开发(Test-Driven Development,TDD)是一种敏捷(AGILE)开发方法论,它把开发流程倒转了过来,在进行代码实现之前,首先保证编写测试用例,从而用测试来驱动开发(而不是把测试作为一项验证工具来使用)。         TDD的原则很简单: a.只有当某个

一.TDD

        测试驱动开发(Test-Driven Development,TDD)是一种敏捷(AGILE)开发方法论,它把开发流程倒转了过来,在进行代码实现之前,首先保证编写测试用例,从而用测试来驱动开发(而不是把测试作为一项验证工具来使用)。

        TDD的原则很简单:

a.只有当某个测试用例运行失败,进而需要编写代码才能通过时才去编写代码;

b.编写能保证测试通过的最少数量的代码;

c.在每一步中都去掉重复的内容;

d.一旦所有测试都通过了,就为下一个必需的功能点新增一个失败的测试用例。

        这些简单的原则可以保证:

a.你所开发的代码可以有机地组织在一起,并且所编写的每一行代码都是目的明确的;

b.你的代码可以保持高度模块化、高内聚,并且高度可复用(因为你必须能够测试它);

c.提供了一个全面的测试用例集,从而可以避免将来造成损环和bug;

d.测试用例同时又是开发规范,并且是文档化的,可以用于未来的需求和变更中。

        对于像JavaScript这种非编译型的动态语言来说,我们坚信做好单元测试用例集会为将来减少很多麻烦。

 

二.Karma

        Karma能让基于测试驱动开发(test-driven development,TDD)的流程更加简单、快速,并且有趣。它使用NodeJS和SocketIO(http://www.socket.io)来运行代码,并且可以在多种浏览器中极其快速地进行测试工作。可以到以下地址获取更多信息:http://github.com/vojtajina/karma/。

Karam与TDD

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
TDD的魅力 06年,我学习Ruby on Rails的时候,首次听说TDD。那时我刚刚进入软件世界,虽然很多概念
一.TDD开发过程 回顾TDD的开发过程,我们是在不断重复如下过程,直至需求完成。 二.TDD的收益 三.单
一.重构实践 实践题目:重构获取指定数值内的所有质数的方法 单元测试案例: package training.gene
一.TDD开发过程 回顾TDD的开发过程,我们是在不断重复如下过程,直至需求完成。 二.TDD的收益 三.单
一.重构实践 实践题目:重构获取指定数值内的所有质数的方法 单元测试案例: package training.gene
“我的TDD实践”系列之TDD概念篇 写在前面:   我的TDD实践这几篇文章主要是围绕测试驱动开发所展
InfoQ:请介绍你自己,以及TDD的实践经验。 熊节:ThoughtWorks公司总监咨询师,曾参与《重构:改善
在敏捷开发中我们常听到BDD,TDD,ATDD….等术语。这里我想谈谈我对TDD和BDD的看法,以及在项目中的
以下是TDD开发中类型的一般分布 这里面关键的类型为 RequestUnitControl, RequestUnitModel, IConfi
我们按照 TDD的1个准备步骤+关键5步来看做一个小例子。 需求: 假设我有一个叫Dollar的class, 那它
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号