• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

(一)测试驱动开发(tdd) 学习笔记:基本思想原则和术语

发布: 2009-5-22 10:39 | 作者: 不详 | 来源: 测试时代采编 | 查看: 166次 | 进入软件测试论坛讨论

领测软件测试网

public class testMath extends TestCase{

     public void testSum(){

          math math1 = new math ;

          assertEquals("3加2应该等于5",5,math1.sum(3,2));

          assertEquals("0加0应该等于0",0,math1.sum(0,0));

          assertEquals("1加1应该等于2",2,math1.sum(1,1));

     }

}

  然后我们对math类的sum方法进行重构

public int sum(int a,int b){

          return a+b;

}

  以上是一个简单的例子,如果是在实际的开发中的话,至少还要加上对临界值的测试,比如两个最大的int值相加等。在上面的例子中,重构是为了让测试通过,或者说是为了保证代码功能上的正确性;有了这些test 作保证,我们还能为了提高代码的质量而重构。

  我个人的理解,测试驱动开发的一个原则就是,编写可以信任的测试,只要测试全部通过,那么说明类的方法全部正确,如果你对代码没有信心,那说明测试代码的测试覆盖面不够,需要进一步完善。

  关于重构的方法,书上归纳的有 extract class ,extract interface,extract method,replace type code with subclasses,replace conditional with polymorphism,form template method,introduce Explaining variable,replace constructor with factory method,replace inheritance with delegation,replace magic number with symbolic constant ,replace nested conditional with guard clauses,,refaction to patterns. 这些方法有很多的目的是提高代码质量。


延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

22/2<12

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网