单元测试的作用大不大?

开拓者Amadues 2019-01-26 10:53:44
公司里集成测试和单元测试都做,单元测试做起来比较麻烦,每个类都要写测试代码,不过据说这样可以保证集成测试里少出现一些问题,因为集成测试的代价和成本比较大,所以做了单元测试可以降低集成测试的成本。有谁对这方面有点心得的吗?可以一起讨论讨论。
...全文
880 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sjlzcj 2019-02-18
  • 打赏
  • 举报
回复
单元测试是必要的,要做到业务全覆盖,不是说所有的类全覆盖,而且不是说一个方法只有一个测试方法,而是要有多个单元测试方法,上下边界值,等价类等等,包括错误入参的用例,用断言判断错误入参的返回值,异常信息等。 单元测试相当于把用户用例用代码实现,业务不变,测试不改。这样当之后内部业务实现方案重构等发生变化,只需执行测试用例,即可完整确定影响域
tianfang 2019-02-18
  • 打赏
  • 举报
回复
作用很大 ,看一个反面教材吧 美链(BEC)漏洞反思
stacksoverflow 2019-02-13
  • 打赏
  • 举报
回复
要从项目的流程角度来看这问题: 首先,单元测试测的是单体程序的逻辑,集成测试测的是接口。 如果项目没有分开这两个概念,那结果肯定是一团糟,不解释。 其次,单元测试和编码是放在一个阶段的,单元测试结束才算编码结束。 所以,省略了单元测试的项目肯定会有一个大洞,要后续花更多的时间和代价来填补这个洞。 也就是大部分国内项目加班的原因之一。
toilerchen 2019-02-13
  • 打赏
  • 举报
回复
肯定有很大意义,但是实际上呢?有几个真正做了的?
qq_36521494 2019-02-13
  • 打赏
  • 举报
回复
单元测试还是有价值的,能帮你更快速的调试代码,减少编码错误....当然,单元测试要求什么覆盖率的,完全智障行径
开拓者Amadues 2019-02-13
  • 打赏
  • 举报
回复
引用 8 楼 stacksoverflow 的回复:
我们项目修改的代码100%都要覆盖掉,而且每次测试的时候都回发现一些bug。 所以,如果不进行单元测试的话,这些bug肯定会流到后续的工程中,甚至生产环境上。
在不同的项目,不同的阶段可能价值不同吧。
stacksoverflow 2019-02-13
  • 打赏
  • 举报
回复
我们项目修改的代码100%都要覆盖掉,而且每次测试的时候都回发现一些bug。 所以,如果不进行单元测试的话,这些bug肯定会流到后续的工程中,甚至生产环境上。
咸哼酒家 2019-02-13
  • 打赏
  • 举报
回复
肯定有用,而且核心代码部分必须做,没必要全部做
呆呆_小茗 2019-02-13
  • 打赏
  • 举报
回复
个人觉得做了,总比没做的好,前面不费精力,后面就费精力了
loveunittesting 2019-01-29
  • 打赏
  • 举报
回复
每个类单元做测试?这个问题问的好。其实如果按照一些TDDer的思维,这是必须的。但是什么事情都不能过于极端,可以参考2-8定律。将80%的精力,用于测试20%的核心代码,这样也可以。对我自己来说,我的代码覆盖率大概保持60%左右。 还有,单侧的主要测试对象,也就是CUT,应该是面向对象的才更有意义,否则,你只能测试过程化的代码,单侧意义不大。老式面向过程的crud代码,单测价值不高,一般还要依赖外部框架。这种大概覆盖一下就行了,不必搞什么全路径。
开拓者Amadues 2019-01-27
  • 打赏
  • 举报
回复
引用 1 楼 LCL_data的回复:
单元测试还是很有必要做的 第一,开发人员自己可以确保自己开发的模块没问题 第二,自己修改了部分代码,至少要确保其他模块不受影响。用单元测试可以达到这个目的
作用总归是有的,但是每个类单元做测试还是很花时间的
十八道胡同 2019-01-27
  • 打赏
  • 举报
回复
单元测试还是很有必要做的 第一,开发人员自己可以确保自己开发的模块没问题 第二,自己修改了部分代码,至少要确保其他模块不受影响。用单元测试可以达到这个目的

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧