当前位置: 首页 > 编程日记 > 正文

单元测试与敏捷开发

单元测试与敏捷开发

转载请保留作者信息:
作者:88250
Blog:http:/blog.csdn.net/DL88250
MSN & Gmail & QQ:DL88250@gmail.com

在要求项目要尽量快地实现的时候,质量与开发进度上会出现一定的矛盾,最突出的就是单元测试代码与逻辑实现代码。
TDD (测试驱动开发)必然没错,但是使用不当会造成开发效率的下降。在敏捷开发实践中,结合前辈经验与自己的经验,
如下几点是要关心的:
1. 为主要的、关键的逻辑组件,关键的逻辑方法进行测试驱动开发
    这样对设计、设计演化很有帮助
2. 逻辑类似的组件如果存在多个,优先编写其中一种逻辑组件的测试代码
    实践中可能会出现一些组件在逻辑上可能完成差不多的功能(例如类型转换帮助类),可以先只编写其中一种组件的
    测试代码以节省时间
3. 发现 Bug 时一定先编写测试代码进行 Debug
    在测试和调试之间众说纷纭,我的观点是应该先编写测试代码找出这个 Bug
4. 关键 Utility、Infrastucture 类型的组件请编写测试代码
    不要忽视了这些帮助类、基础类的正确性和运行效率
5. 保持测试代码与逻辑代码同步
    这里说的“同步”主要包括了测试方法和实现方法的同步;测试代码注释和逻辑代码注释的同步
6. 保证测试用例的独立性
    让测试用例独立的可执行,尽量不要依赖其他的测试用例。这样才能让 TDD 与设计保持良好的协作
7. Mock 是必不可少的
    使用 Mock 可以让接口的设计得到快速验证与反馈,也对团队的并行开发提供便利

转载于:https://www.cnblogs.com/lanzhi/archive/2008/12/05/6469754.html

相关文章:

“AI明星”第四范式C轮融资超10亿元,估值约12亿美元

AI科技大本营消息,12 月 19 日,第四范式宣布完成 C 轮融资,融资金额超过 10 亿元,估值约 12 亿美元。此次投资引入了包括国新、启迪、保利、三峡、中信、农银、交银等战略投资,红杉中国继续追加投资。除了原有股东中国…

精灵图 html为什么会变大,[html] 第128天 精灵图和base64如何选择呢?

可参考https://www.cnblogs.com/wangqi2019/p/10498627.htmlCss Sprites(雪碧图或css精灵),是网页图片处理的一种方式,它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图…

组策略 从入门到精通(十)通过组策略进行软件分发和卸载

其实在前面windows server 2008的一些博文中,已经介绍了如何通过组策略进行软件的分发,在windows server 2003中有些无法完成的软件分发工作在windows server 2008中已经全部纠正了。http://zhengweiit.blog.51cto.com/1109863/291156 今天我们主要来探讨…

RedHatAS4.0-RAID技术

RedHatAS4.0-RAID技术

今晚8点直播 | 详解基于百度自定义模板的OCR结果结构化处理技术

随着行业的发展和技术的成熟,文字识别(OCR)目前已经应用到了多个行业中,比如物流行业快递包裹的分拣,金融行业的支票单据识别输入,交通领域中的车牌识别,以及日常生活中的卡证、票据识别等等。O…

电脑计算机科学型,电脑里附带的计算器有标准型和科学型二种,它 – 手机爱问...

2019-06-24如何用delphi7 0设计标准型计算器这是源代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Buttons, StdCtrls, ExtCtrls;type TForm1 class(TForm) Panel1: TPanel; Panel…

铜缆配线架的选择

我们现在考察一下为安装选择合适的铜缆配线架所必须考虑的因素。铜缆配线架一般分为经济型、中端或高端配线架。经济型配线架经济型配线架通常在结构上脆弱,性能不稳定交缺少技术支持或保证。配线架端接时一般会耗费较多的安装成本,没有电缆管理设备支持…

go6---slice切片

package main/* 切片Slice 其本身并不是数组,它指向底层的数组 作为变长数组的替代方案,可以关联底层数组的局部或全部 为引用类型 可以直接创建或从底层数组获取生成 使用len()获取元素个数,cap()获取容量 一般使用make()创建 如果多个slice…

TensorFlow支持Unicode,中文NLP终于省心了

整理 | 非主流出品 | AI科技大本营终于,TensorFlow 增加了对 Unicode 的支持。什么是 Unicode?Unicode 是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种…

C#:String.Format数字格式化输出

C#:String.Format数字格式化输出 inta 12345678; //格式为sring输出//Label1.Text string.Format("asdfadsf{0}adsfasdf",a);//Label2.Text "asdfadsf"a.ToString()"adsfasdf";//Label1.Text string.Format("asdfadsf{0:C}adsfasdf&…

OpenStack如何实现高可用集群介绍

OpenStack是目前基于开源的,一个非常流行的云管理平台项目。这个项目由几个主要的组件组合起来完成一些具体的工作。因此它的集群比较复杂,也有多种选择方式。OpenStack 作为一个类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service,…

accp8.0html作业,Accp8.0HTML标签

第一章1、HTML超文本标记语言2、网页3、网页头部4、网页标题5、网页主体6、DOCTYPE声明3种级别:(1)Strict 严格类型(2)Transitional过渡类型(3)Frameset框架类型7、网页摘要标签8、字符编码:gb2312简体中文ISO-885901纯英文big5繁体UTF-8国际通用编码9、…

向iOS越狱彻底说再见!

老牌第三方软件商店 Cydia 关闭在即,iPhone 越狱时代又见落日归途?作者 | 仲培艺出品 | CSDNCydia 线上商店是针对完成越狱的 iOS 设备的一种破解软件,在越狱过程中被装入到系统,为 iOS 设备提供第三方 App 的服务平台&#xff0c…

ArrayList的subList方法

李说&#xff1a; ArrayList的subList方法获取到的是ArrayList的一段list&#xff0c;只是其中的一段视图。所以修改subList ,ArrayList同时会修改&#xff0c;因为本来就是同一个东西。 jdk文档中是这样说的&#xff1a; List<E> subList(int fromIndex, int toIndex) …

男孩子学计算机和学医哪个好,你认为学医好还是读211大学的电子信息好?

学医的好处。社会的地位和社会认可度较高。无可否认无论是在过去还是在将来&#xff0c;医生因为其救死扶伤的职业特点而被广泛大众所接受和认可。较高的社会地位会让你在将来的择偶、人际关系处理方面显得更有吸引力和话语权。工作稳定有保障。这点其实还是看题主的水平和实力…

Error Creating Control when creating a custom control

如果你在创建ASP.NET的Server Control 是遇到报错&#xff1a; "Error Creating Control" when creating a custom control 原因是 ToolboxData 元数据中的控件名称和控件的类(class)名不同&#xff0c;改为相同即可解决问题。转载于:https://www.cnblogs.com/DotNet…

精选180+Python开源项目,随你选!做项目何愁没代码

编辑 | Jane出品 | Python大本营每一位程序员&#xff0c;每天大部分时间都是在和代码打交道。但是对于广大的普通用户来说&#xff0c;最重要的不是代码&#xff0c;而是代码最终生成的应用程序。但是&#xff0c;每个项目都从头开始自己一行一行码代码&#xff0c;是非常不现…

八年级计算机网络公开课,计算机网络公开课教案.doc

计算机网络公开课教案公开课教案科目&#xff1a;计算机网络课题: 交换机配置文件备份与恢复知识目标:1、在本次课中要向学生传授交换机上传、下载服务器的安装和配置&#xff1b;2&#xff0e;学生学习交换机上传配置命令&#xff0c;完成交换机Flash内存中保存的配置文件上传…

Centos6.5升级系统自带gcc4.4.7到gcc4.8.0

下载 wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2 解压 tar -xjvf gcc-4.8.0.tar.bz2 进入 cd gcc-4.8.0 下载所需软件&#xff08; ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2 ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.…

photofunia

存个链接用~~~[url]http://www.photofunia.com/[/url]转载于:https://blog.51cto.com/wangyublues/120301

学计算机应用好还是汽车维修好,大学汽车运用与维修专业怎么样_学什么_前景好吗-520吉他网...

时间&#xff1a;2019-06-23 来源&#xff1a;网络资源 汽车运用与维修专业怎么样_学什么_前景好吗2019高考填报志愿时&#xff0c;汽车运用与维修专业怎么样、学什么、前景好吗等是广大考生和家长朋友们十分关心的问题。以下是大学生必备网整理的汽车运用与维修专业介绍、…

20T数据、百万奖金,同济和武大摘得开放数据创新应用大赛桂冠!

整理 | Jane出品 | AI科技大本营中国华录杯城市开放数据创新应用大赛&#xff0c;18 日在天津迎来了收官的决赛之战。本次大赛由中国华录集团有限公司和天津市津南区人民政府共同举办。利用天津市人民政府、企业开放的数据资源&#xff0c;吸引了众多国内高校科研团队和科技企业…

rrdtool报错

参考文档&#xff1a; http://serverfault.com/questions/662161/rrdtool-illegal-attempt-to-updatehttps://emacstragic.net/collectd-causing-rrd-illegal-attempt-to-update-using-time-errors/https://support.nagios.com/forum/viewtopic.php?f7&t26087 报错信息&am…

Grid R-CNN解读:商汤最新目标检测算法,定位精度超越Faster R-CNN

作者 | 周强来源 | 我爱计算机视觉Grid R-CNN是商汤科技最新发表于arXiv的一篇目标检测的论文&#xff0c;对Faster R-CNN架构的目标坐标回归部分进行了替换&#xff0c;取得了更加精确的定位精度&#xff0c;是最近非常值得一读的论文。今天就跟大家一起来细品此文妙处。一、作…

河南信息工程学校计算机协会申请书,协会成立申请书范文15篇.docx

协会成立申请书范文15篇协会成立申请书(一)&#xff1a;  尊敬的系团委领导&#xff1a;  摄影作为一门艺术不仅仅能够丰富同学们的学习生活&#xff0c;同时对学院的建设也起到一个不可黙灭的作用。为了发挥自身优势&#xff0c;参加学校社团文化建设&#xff0c;培养同学…

Luna的大学读书史(1,Intro)

Luna看了看自己的屋子&#xff0c;乱乱的一大摊&#xff0c;地上有的地方的灰都已经是厚厚的一层&#xff0c;有的角落甚至还结了蜘蛛网。床上的被子和衣服搅在一起&#xff0c;书桌上散乱的摆着几根笔和一个大号笔记本&#xff0c;草稿纸上画了若干莫名其妙的符号&#xff0c;…

【BIEE】数据透视表格第一列添加序号

现在有这么一个需求&#xff0c;需要在数据透视图的表格前面条件一列序号&#xff0c;作为行号&#xff0c;如下图&#xff1a;那么实现这个如何实现呢&#xff1f;只需要在BIEE分析编辑界面&#xff0c;新建一列&#xff0c;然后公式定义为&#xff1a;RCOUNT(RSUM(1)) &#…

2018最后一个月的Python热文Top10!赶紧学起来~

作者 | Mybridge译者 | linstancy整理 | Jane出品 | AI科技大本营过去一个月里&#xff0c;我们对近 1000 篇 Python 文章进行了排名&#xff0c;并挑选出热度前10的文章。这份清单的内容涵盖了包括 master python、REST APIs、twitter bot、random module、贝叶斯模型和线性回…

一处机房建设的败笔

第二个是关于空调的。是另一个机房&#xff0c;机房大概的布局如下图。左边空地是为日后扩展所留空间。右边有一排机柜&#xff0c;箭头所指为机柜前端方向。空调是一台艾默生的精密空调&#xff0c;被安装在机房的角落处。看出来什么问题吗&#xff1f;如果是你&#xff0c;你…

计算机组成原理实验pc,计算机组成原理实验报告5- PC实验

计算机组成原理实验报告5- PC实验2.5 PC实验姓名&#xff1a;孙坚 学号&#xff1a;134173733 班级&#xff1a;13计算机 日期&#xff1a;2015.5.15一&#xff0e;实验要求&#xff1a;利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据&#xff0c;其它开关做为控制信号&…