北大青鸟java培训:自动化单元测试的基本原理?

如题所述

软件测试在大部分的软件开发项目中都是非常重要的组成部分,而随着互联网的不断发展,自动化的测试方法被更多的程序员掌握。
下面我们就一起来了解一下,自动化单元测试的基本原理。
越是在底层的测试类型,其测试的成本越低,反馈越及时。
在单元测试阶段能发现的一个缺陷,假设修复它的成本是10块钱,那如果它没有在这个阶段被发现,而是推迟到了组件测试阶段,那修复它的成本是100元,以此类推,每晚一个阶段发现,其修复成本都会增加一个数量级——想一想那高昂的沟通和回归成本吧。
如果在线上才发现这些缺陷,那成本和损失就更难以估量。
基于上面的原理,专业的开发团队应该选择一个合理的测试策略。
先是测试覆盖率的要求不一样。
单元测试的覆盖率终极目标可以追求100%,但系统测试能做到10%就已经很昂贵了。
其次,是每种测试类型的关注内容应该不一样。
单元测试关心代码层面的正确性,大多数的异常路径都是由单元测试来覆盖的,单元测试应该由开发者自己来做,组件测试更多的关心成功路径的情况,以及一些明显的极端情况、边界状态和可选路径,组件测试可以由QA和业务人员来负责。
软件在其生命周期内会频繁地变更,这和建筑物、飞机汽车等非常不同,充分体现了软件”软“的一面。
在这种高度变化的环境下,要每次做到这么高的测试覆盖率,成本是巨大的。
幸好,也正是由于软件”软“的一面,自动化的测试在软件领域更容易实现。
什么是自动化单元测试1.自动化单元测试=自动化+单元+测试近,我调研了一些自动化单元测试覆盖率是个位数的应用,下面宁夏电脑培训http://www.kmbdqn.cn/用实例来说明什么不是自动化单元测试,然后大概就清楚了为什么对很多开发者来说自动化单元测试那么难。
个别的Java开发者还在写main方法,通过System.out.println()的方式来做单元测试,main方法很难被自动执行,println的结果也需要人眼去盯着判断,显然这种单元测试不是自动化的。

温馨提示:答案为网友推荐,仅供参考
相似回答