`
tuti
  • 浏览: 62763 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

测试驱动开发( TDD ) 常见疑问

阅读更多
(免责条款,以下回答基于笔者个人理解)

1. private 方法怎么测试?
   public 方法都覆盖到了就行了。


2. Tdd 算 UT,还是算 IT?
  (我发现QA对于这个区分比较在意)
   TDD 是 Test Drive Development, 能驱动开发就行,
   只要这个test让你对代码放心,不用管它UT还是IT。

3.  测试代码和工作代码比例是多少,覆盖率要达到多少?
     让你对代码觉得放心就好,这些不要管它。

4. 是不是要水平比较高的开发人员才能实行TDD方法?
   从实践效果来看,从新手到高手都适合TDD。
   如果觉得不得要领,需要找个已经熟悉TDD的人和你结对编程。


5.  习惯了TDD后,不用TDD时的开发能力会不会降低?
    -_-!,只能说TDD使人将开发能力提高了。


6.  项目时间紧任务重,能实施TDD?
    就没见过时间不紧任务不重的实际项目。
     干TDD就是为了省时省力。





分享到:
评论
6 楼 gigix 2008-09-28  
withoutmewang 写道
gigix 写道
withoutmewang 写道
我不知道拿到一个任务时,你们是如何起步写测试方法的? 同学们分享下经验啊

如果不写测试那你第一步做什么?

如何起步写测试,从哪儿开始?
我的想法是从界面开始一层层往下剥,一直到数据库为止。

我在问你呢
如果不写测试你第一步做什么?
回答了这个问题你就知道该怎么起步写测试了。
5 楼 RCFans 2008-09-28  
tuti 写道

3.  测试代码和工作代码比例是多少,覆盖率要达到多少?
     让你对代码觉得放心就好,这些不要管它。

在CMMI 2中就有规范,Test Case的覆盖率应达到1界面1个,或1类1个。

tuti 写道

4. 是不是要水平比较高的开发人员才能实行TDD方法?
   从实践效果来看,从新手到高手都适合TDD。
   如果觉得不得要领,需要找个已经熟悉TDD的人和你结对编程。

我认为团队里如果有新手,最好由高手写Test Case,因为,这需要有对功能、代码、实现结果的全面掌握的能力。

tuti 写道


6.  项目时间紧任务重,能实施TDD?
    就没见过时间不紧任务不重的实际项目。
     干TDD就是为了省时省力。

非常同意。我正在新公司第一天就接手了一个同事两周赶出来的一个约4万行从未运行过的业务系统,使用TDD先对着需求把Test Case写了出来,现在Test Case/Fix Bug/Coding同步进行,本来需要3个人的项目目前我一个人已经输出自测无bug的30%模块。一些约束异常与性能的Case可以及大的提升code质量,要知道,一个开发人员70%以上的时间都是再与Bug战斗。除非把Build成功当成完成(我认识的绝大多数开发人员都这么想)。


4 楼 withoutmewang 2008-09-27  
gigix 写道
withoutmewang 写道
我不知道拿到一个任务时,你们是如何起步写测试方法的? 同学们分享下经验啊

如果不写测试那你第一步做什么?


如何起步写测试,从哪儿开始?

我的想法是从界面开始一层层往下剥,一直到数据库为止。
3 楼 gigix 2008-09-26  
withoutmewang 写道
我不知道拿到一个任务时,你们是如何起步写测试方法的? 同学们分享下经验啊

如果不写测试那你第一步做什么?
2 楼 withoutmewang 2008-09-26  
对于Web应用,很多人说过Action测试很繁琐,没必要。或者使用selumium这样的工具进行IT。

我不知道拿到一个任务时,你们是如何起步写测试方法的? 同学们分享下经验啊
1 楼 gurudk 2008-09-26  
实际情况是,使用这种开发方式的人还是很少,主要是观念问题,一般试过了都觉得这种方式不错。

相关推荐

    code kata以及测试驱动开发TDD介绍实用PPT课件.pptx

    "Code Kata 和测试驱动开发(TDD)介绍实用 PPT课件" 本课程主要介绍了 Code Kata 和测试驱动开发(TDD)的概念和实践方法,并对软件设计的基本原则进行了详细的讲解。课程共计 13 页,涵盖了软件设计的九个原则,...

    测试驱动开发(TDD)入门讲解及代码实例

    测试驱动开发(TDD)是极限编程的重要特点,它以不断的测试推动代码的开发,既简化了代码,又保证了软件质量。本文从开发人员使用的角度,介绍了 TDD 优势、原理、过程、原则、测试技术、Tips 等方面。 背景 一个...

    测试驱动开发TDD培训讲义

    测试驱动开发(Test Driven Development,简称TDD)是一种软件开发方法,强调在编写实际的生产代码之前,先编写能够失败的单元测试。TDD的核心理念是“先测试,后编码”,通过测试来驱动设计,确保软件的质量和可...

    测试驱动开发(TDD)深入浅出

    测试驱动开发 TDD ,将读者带入XP极限编程的神奇世界!

    TDD测试驱动开发.pptx

    "TDD测试驱动开发.pptx" TDD 测试驱动开发是一种软件开发方法,它强调通过编写自动化测试来驱动整个开发过程。TDD 是敏捷开发中的一个核心实践和技术,也是一种设计方法论。其主要包括两方面:测试先行和代码重构。...

    测试驱动开发TDD(1-3)

    测试驱动开发(TDD,Test-Driven Development)是一种软件开发实践,强调先编写测试用例,然后编写刚好能够使测试通过的最小代码量,最后再进行重构以改进代码质量。这种开发方式可以确保代码的可读性、可维护性和正确...

    TDD 测试驱动开发 文档 详细

    测试驱动开发(Test-Driven Development, 简称TDD)是一种软件开发实践,强调在编写实际代码之前先编写测试用例。这种方法的核心理念是通过编写能够失败的测试来定义需求,然后编写足够的代码使测试通过,最后重构...

    TDD测试驱动开发

    文件名中的“测试驱动开发TDD培训讲义.ppt”、“TDD_测试驱动开发.ppt”和“测试驱动开发—1.1_测试驱动开发简介.ppt”很可能包含了关于TDD的详细讲解,涵盖了TDD的概念、原则、实践技巧以及如何在实际项目中应用...

    测试驱动开发(TDD)

    测试驱动开发(TDD)是一种先进的软件开发方法,它的核心理念是“先写测试,后写代码”。在TDD的流程中,开发人员首先编写测试用例,这些测试用例定义了所需功能的行为边界和预期结果。然后,他们会运行这些测试,...

    测试驱动开发的3项修炼:走出TDD丛林

    在《测试驱动开发的3项修炼:走出TDD丛林》一书中,作者王晓毅深入分析了在执行测试驱动开发时常见的问题和挑战,比如测试的编写难以覆盖所有功能点,或者在编写测试时面临设计上的困难。书中提供了实际案例分析,...

    9、测试驱动开发(TDD)介绍1

    测试驱动开发(TDD)介绍 测试驱动开发(TDD)是一种开发流程,旨在通过编写测试代码来驱动开发过程。这种开发方法可以保证项目的健壮性,尽可能地排除未知的bug,并提高代码的可读性、可维护性和可扩展性。 TDD的...

    测试驱动编程 TDD 实例

    测试驱动开发(Test-Driven Development,简称TDD)是一种软件开发方法,它的核心思想是“先写测试,再写代码”。TDD强调在编写实际功能代码之前,先编写能够失败的单元测试,确保测试覆盖了预期的功能需求。这种...

    Visual Studio 2010 TDD 测试驱动开发 实战 视频及源码

    教程主题:Visual Studio 2010 TDD 测试驱动开发 实战 教程录制:柳永法 web:http://www.yongfa365.com/ 本教程旨在以最简单的hello world方式像您展示 Visual Studio 2010强大的TDD,推荐任何没接触过VS2010及TDD...

    测试驱动开发的艺术 epub电子书

    极限编程反其道而行之,主张采用测试驱动开发(TDD)的方法,即通过测试定义所要开发的功能的接口,然后实现功能的开发过程。TDD通过不断地测试推动代码的开发,既简化了代码,又保证了软件质量。本书采用“手把手”...

    code kata以及测试驱动开发TDD介绍实用PPT学习教案.pptx

    这份PPT教程主要介绍了两种软件开发实践:Code Kata和测试驱动开发(Test-Driven Development, TDD)。Code Kata是一种编程练习,旨在通过重复练习来提高技能和熟练度,类似于武术中的练习动作。而TDD是一种软件开发...

    C-C++项目的测试驱动开发(TDD):从单元测试到集成测试.md

    在C/C++项目中应用测试驱动开发(TDD)的方法,从单元测试到集成测试,详尽介绍了测试的基础、框架选择、实际应用及最佳实践。文章首先阐述了TDD的核心理念及其优势,包括提升代码质量、减少错误和改进设计等。接着...

    测试驱动开发.pdf

    测试驱动开发(TDD)以测试作为开发过程的中心,它要求在编写任何产晶代码之前, 首先编写用于定义产品代码行为的测试,而编写的产品代码又要以使测试通过为目标。测试驱 动开发要求测试可以完全自动化地运行,在对...

Global site tag (gtag.js) - Google Analytics