《单元测试的艺术》读书笔记----使用存根破除依赖

存根的定义:

被测试类中存在的一个依赖项(或协作者)的可控制的代替物。

重构代码并使用存根:

可使用的办法有:

1、创建有参数的构造函数,初始化依赖项为存根对象;

2、使用set方法给测试对象设置伪对象;

原文地址:https://www.cnblogs.com/markcd/p/9005165.html

时间: 2024-10-27 15:36:28

《单元测试的艺术》读书笔记----使用存根破除依赖的相关文章

Unix编程艺术读书笔记(一)

 Unix编程艺术读书笔记(一)这本书是一位面试官告诉我的,很感谢他的指点,关于面试的详细过程,我想以后再写,当然我也意识到自己的不足,一方面是面试的技巧,还有一方面就是学习的方法.阅读这本书很享受,加上之前的积累,一些疑惑,还有一些基础的不足,在这本书里找到了归宿. 下面,一起来享受这本书的精华吧 Unix诞生与1969年,那时候我们还在闹文革吧,可一个可以改变21世纪甚至更远的未来的操作系统问世,至少现在的Linux是基于Unix的设计哲学.Unix是唯一一个在不同种类的计算机,众多厂商

Javascript DOM 编程艺术读书笔记16/04/01

愚人节快乐 开始用webstorm了,随着学习深入,代码越来越长,因为不借助ide还真是挺难的 今天发现了一个严重的误区,text和textNode是完全不同的两个概念,之前没有特别注意,写代码很容易跳过createTextNode直接用parentNode.appendChild(text) 单独拎出来晒一晒,以后引以为戒 Javascript DOM 编程艺术读书笔记16/04/01

<Getting Things Done> 搞定I 无压工作的艺术 读书笔记

最近感觉时间管理做的特别差,上周末好多事乱成一锅粥.于是借来同事的书来看,发现真的写的特别好! 在这里挑重点和自己的心得总结一下. 第1章 问题: 1. 现代社会的事情不断涌现,已经不是把事情做个列表,先做重要紧急的,这样简单的做法就能应付得了. 2. 很多要去做的事情被我们存在了大脑里,只是记得需要去做,增加心理压力,却没时间真正去实施.这样的缓存其实是造成我们低效率的一个原因. 目标:做每件事都处于一种忘我的境界,心如止水,享受其中.(我们都曾经无意识地达到过这种最高境界,但是却不能控制自己

JavaScript DOM编程艺术 读书笔记

3 DOM DOM分别指document,object和model. DOM中包含的节点主要分为三种:元素节点.文本节点和属性节点.DOM的原子是元素节点,标签的名字就是元素的名字,元素可以包含其他的元素.没有被包含在其他元素里的唯一元素是<html>元素,它是树节点的根元素:在XHTML文档里,文本节点总是被包含在元素节点的内部.但并非所有的元素节点都包含有文本节点:属性节点用来对元素做出更具体地描述. 有3种DOM方法可获取元素节点,分别是通过元素ID.通过标签名字和通过类名字来获取. 1

&lt;java并发编程的艺术&gt;读书笔记-第三章java内存模型(一)

一概述 本文属于<java并发编程的艺术>读书笔记系列,继续第三章java内存模型. 二重排序 2.1数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之后,再读这个位置. 写后写 a = 1;a = 2; 写一个变量之后,再写这个变量. 读后写 a = b;b = 1; 读一个变量之后,再写这个变量. 上面三种情况,只要重排序两个操作的执行顺序,

软件测试的艺术读书笔记

集成测试的目的是将模块的功能与定义模块的功能规格说明或接口规格说明进行比较.从而揭示出模块与规格说明存在着矛盾. 模块的规格说明和源代码.(输入输出参数和模块的功能) 使用白盒的测试方法分析逻辑结构,然后使用黑盒测试方法来设计测试用例. 第一步要列举出程序中所有的条件判断. 测试是为发现错误而执行程序的过程. 代码检查,走查以及可用性测试是三种主要的人工测试方法. 常见的编码错误: 变量是否都已声明.数组下标是否越界.是否被0除.是否每个循环都中止了,文件是否在使用前打开.形参的数量是否等于实参

Oracle性能诊断艺术-读书笔记(执行计划中显示 Starts, E-Rows, REM A-Rows and A-Time)等)

Oracle性能诊断艺术-读书笔记

create table test0605 as select * from dba_objects; select t1.owner,t1.object_name,t1.object_id from test0605 t1 where t1.object_id=3344; select t1.SQL_ID,t1.HASH_VALUE,t1.SQL_TEXT,t1.SQL_FULLTEXT,to_char(t1.LAST_ACTIVE_TIME,'yyyy-mm-dd hh24:mi:ss')

Javascript DOM 编程艺术读书笔记16/03/26

更新时间 2016-03-27 01:14:15 外设javascript文件操作的标准模板归纳 javascript不需要事件必须在HTML文档处理,可以在外部javascript的文件把一个事件添加到HTML的某个元素上 element.event = atciotn 关键是如何把这个元素确定下来,这个问题类似css,可以用class或者id 如果把某个事件添加到某个确定id的元素上,可以用getElementById() document.getElementById("id")