`
guanpanpan
  • 浏览: 16718 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

从单元测试开始说起

 
阅读更多

 制作业引言

如果我们现制造一个汽车,如果我们制造完汽车跑不起来,就得去检查哪里出了问题,这样很麻烦,为了减少麻烦,我们把制造汽车分成一个步骤,1.部件的制造,如发动机,轮胎。2.部件检测3.用经过检测的部件来组装汽车4整车试运行。这样可以大大减少出错的概率。

 软件业

对比软件行业,做一个程序,也可以把这个程序分为功能部分和组装功能的部分,我分别称之为功能程序和衔接程序,功能程序要有单元测试来保驾,衔接程序要有集成测试来保驾,整个程序要有验收测试来保驾。

 软件自测试程序

如果做完一个程序,可以随时让程序自己告诉我们自己是否是可以正常运行的,无疑是很好的诱惑,这种程序称之为可自测的程序,制造业的测试只能做到半完成的自测试,但软件却可以实现完全的自测试。个人现在写代码的最底标准是写出的程序必须是可自测程序,和单元测试是两个概念。

测试和软件设计的关系

如果要测试程序中的组件,那就要求每个组件必须是松耦合的,有输入输出,每个组件就有了清晰的功能,和设计的松耦合原则和单一职责是完全一致的,但更具有强制性,如果你写的不是松耦合,根本没有办法写单元测试。

如果感觉用模式写代码什么的总停留在似是而非的阶段,还是写单元测试吧,对模式,设计,以及整个软件过程会有新的认识,强制代码一定松耦合。

 总结自己对于自己写代码的最低标准

1.自测试程序

2.核心领域逻辑一定有单元测试

分享到:
评论

相关推荐

    我讨厌单元测试:滕振宇谈如何进行单元测试

    说起单元测试的好处相信大家都能列举出不少,可是很多时候,开发人员面对自己产品的代码,想写单元测试却无从下手,久而久之,便会有人大喊:“我讨厌单元测试。”资深敏捷咨询师腾振宇(DanielTeng)在GTUG-TopGeek...

    单元测试培训系列

    说起单元测试,多数同学应该都知道或听过,可能不少同学认为自己也写过,甚至觉得单元测试很简单有什么好培训的?其实这个事情还真没想象的那么简单!我基本可以比较负责任的说,你若没深入对单元测试做过研究,不...

    软件测试中的集成测试方法

    我想说起集成测试来大家一定都不陌生,但是如果说起集成测试的具体测试方法大家有几个了解呢,那我来介绍一下有关集成测试的方法,希望对新手有所帮助集成测试是单元测试的逻辑扩展。它的最简单的形式是:两个已经...

    山东省郯城县第三初级中学九年级物理全册 第十五章《从测算家庭电费说起》单元综合小测试(无答案) 新人教版

    10. **电功率与电阻的关系**:从数据中可以看出,电功率与电阻的倒数成正比,即P=k/I^2,其中k是常数。 11. **测定小灯泡功率的实验**: - (1)选择滑动变阻器时,应考虑能够提供足够的电流以使灯泡正常工作,故...

    语文版七年级下第二单元同步测试精选.doc

    在初中语文的学习过程中,七年级下学期第二单元的同步测试精选不仅仅是一次简单的知识考核,它更是一次对学生们在语文基础知识掌握情况的全面检阅。这些基础知识点包括汉字注音、词语解释、成语应用、句子仿写和文段...

    从军队传令的笑话说起.docx

    4. **错误检查与纠正机制**:在软件开发中,有专门的错误检测(如单元测试、集成测试)和纠正机制(如版本控制、代码审查),来确保代码质量。同样,管理层也需要建立类似的机制,如定期检查、审计和反馈循环,以...

    2018年九年级语文上册第四单元综合测试卷新人教版

    正确的顺序应该是C,通过分析句子之间的关系,可以确定这样的逻辑顺序:先从文化和价值观的构建说起,然后延伸到人的情感、智慧和劳动,再到身处异地时对故乡的怀念,最后是故乡对于个人身份认同的重要性。...

    显卡最专业的测试软件

    说起处理器识别工具GPU Z免费版,其知名度和必备度无需赘言。硬件网站TechPowerUp.com现在又给我们提供了一个类似的工具,用于显卡识别的”GPU-Z”。这是TechPowerUp GPU-Z发布的第二个版本为0.0.2,Logo问题已修正...

    使用java语言实现的通信录

    首先,让我们从Java的基础说起。Java是一种面向对象的语言,其强类型和自动垃圾回收机制使得它在开发大型应用程序时特别受欢迎。通信录的实现通常会涉及到以下几个核心概念: 1. **数据结构**:通信录的核心是存储...

    数据结构课程设计魔王语言

    这些问题需要通过增加日志输出、单元测试和代码审查来解决。设计讨论应集中在如何优化解析效率,如何处理复杂语法规则,以及如何确保所有可能的魔王语言表达式都能正确转换。 【经验和体会】 在实现过程中,可能...

    细细品味Hadoop_Hadoop集群(第11期副刊)_HBase之旅.pdf

    **1.2 从一个示例说起** 为了更好地理解HBase的应用场景和优势,我们可以通过一个简单的例子来进行对比分析:假设我们需要存储一篇博客文章的相关信息,包括文章标题、内容、作者姓名和昵称等。 - **关系型数据库...

    mv_cicloDeVida:应用程序生命周期示例

    首先,让我们从最开始的部分——需求分析说起。在这一阶段,项目团队会明确应用的需求,确定功能范围,以及用户期望。这通常包括收集用户需求、编写需求规格说明书等。在这个示例中,"mv_cicloDeVida"可能是一个用来...

    Java工具

    自动化测试工具JUnit是Java单元测试的标准,它允许开发者编写可重复执行的测试用例,确保代码的正确性。Mockito等工具则用于模拟对象,隔离系统中的复杂依赖,使测试更加可控。 文档生成工具Javadoc自动生成API文档...

    JAVA开发的门禁系统

    9. **测试与调试**:在开发过程中,单元测试、集成测试和压力测试是必不可少的。JUnit和Mockito等工具可以帮助开发者编写和执行测试用例,找出并修复潜在问题。 10. **部署与维护**:完成开发后,系统需部署到...

Global site tag (gtag.js) - Google Analytics