文章分类 -  C# 单元测试

摘要:二、优秀单元测试的支柱 要编写优秀的单元测试,它们应该同时具有 可靠性、可维护性 及 可读性。 2.1 编写可靠的测试 一个可靠的测试能让你觉得自己对事态了如指掌,能够从容应对。以下是一些指导原则和技术: (1)决定何时删除或修改测试 一旦测试写好并通过,通常我们不应该修改或删除这些测试,因为它们是 阅读全文
posted @ 2020-05-30 16:36 delafqm 编辑
摘要:一、测试层次和组织 1.1 测试项目的两种目录结构 (1)集成测试和单元测试在同一个项目里,但放在不同的目录和命名空间里。基础类放在单独的文件夹里。 (2)集成测试和单元测试位于不同的项目中,有不同的命名空间。 实践中推荐使用第二种目录结构,因为如果我们不把这两种测试分开,人们可能就不会经常地运行这 阅读全文
posted @ 2020-05-30 16:34 delafqm 编辑
摘要:三、隔离(模拟)框架 3.1 为何使用隔离框架 对于复杂的交互场景,可能手工编写模拟对象和存根就会变得很不方便,因此,我们可以借助隔离框架来帮我们在运行时自动生成存根和模拟对象。 一个隔离框架是一套可编程的API,使用这套API创建伪对象比手工编写容易得多,快得多,而且简洁得多。 隔离框架的主要功能 阅读全文
posted @ 2020-05-30 16:29 delafqm 编辑
摘要:二、交互测试-模拟对象 工作单元可能有三种最终结果,目前为止,我们编写过的测试只针对前两种:返回值和改变系统状态。现在,我们来了解如何测试第三种最终结果-调用第三方对象。 2.1 模拟对象与存根的区别 模拟对象和存根之间的区别很小,但二者之间的区别非常微妙,但又很重要。二者最根本的区别在于: 存根不 阅读全文
posted @ 2020-05-30 16:28 delafqm 编辑
摘要:一、破除依赖-存根 1.1 为何使用存根? 当我们要测试的对象依赖另一个你无法控制(或者还未实现)的对象,这个对象可能是Web服务、系统时间、线程调度或者很多其他东西。 那么重要的问题来了:你的测试代码不能控制这个依赖的对象向你的代码返回什么值,也不能控制它的行为(例如你想摸你一个异常)。 因此,这 阅读全文
posted @ 2020-05-30 16:26 delafqm 编辑
摘要:一、单元测试基础 1.1 什么是单元测试 一个单元测试是一段自动化的代码,这段代码调用被测试的工作单元,之后对这个单元的单个最终结果的某些假设进行检验。 单元测试几乎都是用单元测试框架编写的。单元测试容易编写,能够快速运行。单元测试可靠、可读,并且可维护。 只要产品代码不发生变化,单元测试的结果是稳 阅读全文
posted @ 2020-05-30 16:14 delafqm 编辑

点击右上角即可分享
微信分享提示