TDD三定律

定律一、在编写不能通过的单元测试前,不可编写生产代码。

定律二、只可编写刚好无法通过的单元测试,不能编译也算不过。

定律三、只可编写刚好足以通过当前失败测试的生产代码。

 

测试代码的要素:可读性,可读性,可读性。重要事说三遍。

编写测试用例的模式,或者现有的测试框架提供的测试形式是,构造-操作-检验(BUILD-OPERATE-CHECK)模式。

其分为三个环节:

1、构建测试数据;

2、操作或处理测试数据(即数据进入真实代码走一遭);

3、校验真实代码的输出结果是否与预期的一致。

 

测试的5条(FIRST)准则:

1 快速(Fast),测试应该快(及时反馈出业务代码的问题)。

2 独立(Independent) 每个测试流程应该独立。

3 可重复(Repeatable) 测试应该在任何环境上都能重复通过。

4 自我验证(Self-Validating) 测试应该有bool输出。

5 及时(Timely) 测试应该及时编写。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
TDD,即测试驱动开发(Test-Driven Development),是一种开发方法论,其核心思想是在编写功能代码之前先编写测试代码。通过先编写测试代码,再编写功能代码,可以确保开发的代码符合预期,并且能够快速地发现和解决潜在的问题。 在Martin Fowler的文章《Is Design Dead?》中,他对TDD进行了探讨,指出了一些误解。有人错误地认为TDD不需要设计,导致一些优秀的设计者放弃了设计去实践TDD,最终得出TDD不可行的结论。实际上,TDD并不排斥设计,而是强调在开发过程中保持简单的设计和良好的测试覆盖率。 在TDD中,设计是一个重要的方面。虽然TDD主要关注业务逻辑的开发,但也需要考虑界面设计。在《Is Design Dead?》中,Martin Fowler提到了一个例子,即在用户猜测了数字后,在控制台上显示历史猜测记录。虽然这属于界面的工作,但在TDD中,我们也应该对其进行测试和设计。 总结来说,TDD是一种测试驱动的开发方法,强调在编写功能代码之前先编写测试代码,以确保代码的正确性和可维护性。尽管TDD主要关注业务逻辑开发,但设计仍然是一个重要的方面。在开发过程中,我们应该注重简单的设计和良好的测试覆盖率,同时也需要考虑界面设计。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [TDD编码实战讲义](https://blog.csdn.net/ccboy2009/article/details/118056295)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值