百科问答小站 logo
百科问答小站 font logo



在测试驱动开发中 如果测试写错了导致单元测试过不了怎么办?如何保证测试的正确性呢? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

测试都能写错需要重审需求,要么没看明白,要么没有可测试性。


补充一点好了:

什么叫对?什么叫错?这是通过测试来确定的,测试根本就不存在对错。单元测试是一段程序没错,但是这段程序本身就是衡量对错的标准,所以这段程序根本没有什么正确性。


如果我们有一个规则文档,然后再将这个规则文档转变为一段测试程序,我们能否验证测试程序与规则文档一致?如果我们可以通过程序验证,那么这段程序就是规则文档的另一种表达形式,如果验证不了,就说明规则文档没有可测试性


如果是前者,那么我们就可以用另一段程序将规则文档转换为测试程序。这样,我们就发明了另一种描述规则的语言,然后做了这个语言的一个编译器。说白了也就是说规则文档自己变成了一段程序

如果是后者,因为不具备可测试性,所以我们不可能用程序确保规则文档和程序一致,也就是测试程序的测试程序根本就不可能存在


所以本质上,根本就不存在一个超然的,绝对正确的东西。验证规则(也就是测试程序)必须是绝对对的,测试本身就是确认程序满足验证规则(测试程序)的过程,而不是确保程序必然正确的过程



简单来说就是,只能保证自己的程序通过测试,而不能保证自己的程序绝对是对的


user avatar   jeffz 网友的相关建议: 
      

所以测试必须简单,能够轻易写对,或是看出哪里错了。




  

相关话题

  微信、支付宝等 43 个 APP 将进行适老化及无障碍改造,如何评价这一举动?具有什么样的社会意义? 
  有没有什么软件可以依据人耳的等响曲线来修正不同响度下音乐的频响,从而使听感保持一致? 
  微软内部有哪些类似 Jeff Dean 的大神? 
  现行条件下是否真的无法完全抹除已在电子设备上删除的信息? 
  什么理由让代码保存为GBK? 
  软件http请求 对网站本身有没有弊端? 能否通过这种模拟请求的方式做出一些自动刷回复的脚本软件,并出售? 
  为什么有些(可能只是一些)程序员工作经验越长、丰富,越谨慎,越不愿意用新技术新特性? 
  网传腾讯旗下 App 不得新上架或版本更新,腾讯回应正配合监管部门进行合规检测,还有哪些信息值得关注? 
  用软件均衡器弥补耳机的弱点——这科学吗? 
  GitHub 上有些什么好玩的项目? 

前一个讨论
为什么一直没有出现一个可以把现代 CSS 编译为支持老版本浏览器 CSS 的编译工具?
下一个讨论
有没有几千万毫安时的充电宝?





© 2025-05-25 - tinynew.org. All Rights Reserved.
© 2025-05-25 - tinynew.org. 保留所有权利