`
neu_gefei
  • 浏览: 6475 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

TDD 第一章 使用入门(二)

阅读更多
1.1 Testing

    TDD——测试驱动开发,意味着你需要为你实际书写的每一部分代码书写测试。也意味着你将率先书写测试。测试是衡量代码是否完成所需工作的一种手段,在写完相对应的代码后,测试可以保证代码实现了测试的功能。
   
    你编的每个类都将有它所对应的测试类,在1.1节中,StudentTest类就是Student类的测试类。

    StudentTest类将不得不创建Student类的对象,并且对这些对象发送消息,一旦所有的消息发送成功,就证明这个类可以正常工作。很明显,就像图中的连线所表示的一样,StudentTest是依赖于Student类的;相反,Student类并不依赖于StudentTest类,应该向被测试类隐藏测试类的实现。


  
引用
Test-driven development means that you will write tests for virtually every bit of code. It also means that you will write the tests first. The tests are a means of specifying what the code needs to do. After writing the corresponding code, the tests are run to ensure that the code does what the tests specify.
    Each class you code will have a corresponding test class. In Figure 1.1, StudentTest is the test class for the production class Student.
    StudentTest will have to create objects of class Student, send messages to these objects, and prove that once all the messages have been sent, things are as expected. StudentTest is thus dependent on Student, as shown by the navigable association in the diagram. Conversely, Student is not dependent on StudentTest: The production classes you build should know nothing about the tests written for them.
  • 大小: 6.1 KB
分享到:
评论

相关推荐

    tdd_net_with_fitnesse.pdf

    - **第一章:入门**: - **介绍**:解释了谁应该阅读本书,为什么需要TDD以及FitNesse的作用。 - **安装FitNesse**:详细指导如何设置FitNesse环境,并进行简单的测试验证。 - **第二章:实战FitNesse和TDD**: -...

    C#测试驱动开发

    第7章 实现第一个用户情景 第8章 集成测试 第Ⅲ部分 TDD方案 第9章 Web上的TDD 第10章 测试WCF服务 第11章 测试WPF和Silvedight应用程序 第Ⅳ部分 需求和工具 第12章 应对缺陷和新的需求 第13章 有关优秀工具的争论 ...

    C#入门经典代码包含15章的代码

    2. **控制流与异常处理** (第15章): 这一章主要讲解if-else、switch、for、while等控制结构,以及如何使用try-catch来处理程序中的异常,确保程序的健壮性。 3. **数组与集合** (第16章): 数组是存储同类型数据的...

    从入门到精通C#程序设计ppt教程

    1. **第一章:C#简介** - C#的历史和发展背景 - C#的主要特点和用途 - .NET Framework和.NET Core的区别 - 安装Visual Studio IDE 2. **第二章:C#语法基础** - 变量、数据类型和常量 - 运算符和表达式 - ...

    最全VS2010初级教程学习手册

    写在前面 第一章 关于Visual Studio、VC和C++的那些事 1 第二章 安装、配置和首次使用VS2010 2 安装 2 配置 10 HelloWorld. 18 VS2010正式到手,说说几点试用体会 29 VS2010 中使用main函数作为C++的入口函数本篇...

    Test Driven Development_A J2EE Example

    1. **第一章:测试驱动开发简介** - 介绍测试驱动开发的核心理念。 - 讨论TDD的优势及其对软件开发流程的影响。 - 概述如何将TDD融入现有的开发环境。 2. **第二章:入门** - 介绍TDD所需的工具和环境设置。 -...

    Python算法从入门到实践

    1. **Python基础知识**:学习Python的基础语法是入门的第一步,包括变量、数据类型(如整型、浮点型、字符串、列表、元组、字典等)、流程控制(如if-else、for、while循环)、函数定义和调用、模块导入以及异常处理...

    网优入门大全

    #### 第一章:网优基础理论知识 ##### 第一节:GSM网络优化概述 **1.1 网络优化的概念** GSM网络优化是指通过对现有网络进行一系列的技术调整和资源配置,以提高网络的服务质量和运行效率的过程。随着移动通信...

    测试驱动开发with Junit(三)

    首先,我们来看“第一章&第二章”的内容。这部分可能涵盖了TDD的基本理念和JUnit的入门知识。TDD的核心思想是“红-绿-重构”循环,即先编写失败的测试(红),然后编写最小量的代码使测试通过(绿),最后对代码进行...

    clojure in action

    这一章通过一系列示例程序让读者快速了解Clojure的核心特性,如数据结构操作、函数定义、宏使用等。 - **第3章:Clojure的基础构建块** 在这一章中,作者深入讲解了Clojure中的基本类型、集合数据结构以及序列...

    Apress.Applied.WPF.4.in.Context.2011

    书中第一章介绍了WPF的基本概念和XAML标记语言,帮助读者快速入门。 ### 创建视图与控制元素 在第四章和第五章中,作者详细讲解了如何使用WPF创建视图,并向这些视图添加控件。通过实际示例,读者可以学习到如何...

    D3.js数据可视化实战手册.epub

    这一章涵盖了D3库中过渡以及动画的相关概念。 第7章,图形之美,介绍了SVG相关的概念。SVG是一个广泛用于数字可视化程序的W3C(World Wide Web Consortium)标准。 第8章,图表美化,探索了数据可视化中最为人知的...

    C#语言与数据库基础15章完整题目

    1. **C#基础**:第一章通常会介绍C#语言的基本概念,包括变量、数据类型、运算符、流程控制(如条件语句和循环)以及函数的使用。此外,还会涉及面向对象编程的基础,如类、对象、继承、多态等概念。 2. **C#高级...

    Wiely - Agile Database Agile Database Techniques

    ##### 第一部分:奠定基础 - **第1章:敏捷数据方法**:介绍了敏捷数据方法的基本概念,包括其背景、原则以及与传统数据库开发方法的区别。 - **第2章:从业务场景到数据库——现实世界中的UML**:阐述了如何利用...

    Manning.-.JUnit.in.Action.2nd.Edition.2010

    - **第1章:JUnit入门** 这一章节为读者提供了JUnit的基本概念和安装指南,同时介绍了如何创建简单的JUnit测试用例。此外,本章还探讨了JUnit的执行机制以及如何组织测试代码。 - **第2章:探索核心JUnit功能*...

    mvc3高级编程英文版

    首先介绍*** MVC的基本概念,然后解释它如何延续之前的版本,并帮助读者在确保软件环境正确配置后开始创建第一个*** MVC 3应用程序。 第2章:控制器 控制器是处理用户请求并返回响应的中间件。本章讲解控制器和操作...

    MVC3_67_第1章第1次_MVC简介

    - 创建第一个MVC应用的步骤 - 控制器的生命周期和路由配置 - 视图的创建与渲染,包括Razor语法的使用 - 模型绑定和验证 - HTTP请求和响应的工作流程 通过深入学习这些基础知识,你可以逐步掌握如何利用ASP.NET MVC ...

    Python 核心编程 第二版.pdf

    综上所述,《Python核心编程》第二版不仅是一本优秀的Python入门书籍,也是一本适合不同层次读者深入学习和实践的宝贵资源。通过系统地学习本书内容,读者可以建立起坚实的Python编程基础,并逐步成长为一名熟练的...

Global site tag (gtag.js) - Google Analytics