楼主: a610062656
跳转到指定楼层
上一主题 下一主题
收起左侧

[找工就业] Unit test到底有什么用?

 
🔗
gouber 2020-11-28 13:55:20 来自APP | 只看该作者
全局:
最直观的作用就是防止regression,尤其当别人在未来改你的代码时,那unit test就是第一道保护闸。
回复

使用道具 举报

全局:
只能说有些地方的tests单看可能的确作用不大,但是宏观上看如果整个项目都没有tests, 而你又修改了其中一些代码却不知道自己这看似不经意的修改是否会对其他地方造成影响的话,你提交代码的时候不慌么
回复

使用道具 举报

🔗
lololabc 2020-11-28 14:19:39 | 只看该作者
全局:
Unit test 用处还是很大的。Unit test 的test scope 小,适用于test 逻辑较为复杂的函数,保证所有逻辑分支都有检测到。同时unit test 运行时间短,发现问题易于修复。
mock是一种break dependency 的方法。因为unit test 的test scope 主要就是那个function, 只需要保证那个function 的逻辑正确即可。
楼主说的例子可能做更大scope 的Integration test 更为适合,可以很好的测不同模块,不同service 之间的交互与联系。

评分

参与人数 1大米 +1 收起 理由
TracyInSummer + 1 赞一个

查看全部评分

回复

使用道具 举报

全局:
liuzhongda 发表于 2020-11-27 20:15:39
别动不动就说侮辱智商这种话,别戾气那么重,你有这种想法是因为你经验不够,也没做过什么项目,存在都有他的合理性,好好思考,虚心学习吧
您这种只说空话教育人而不回答问题的交流方式真的很无效甚至有点装,只拿“大道理”批评了别人而并没有解答提问者的任何问题,还给人一种仿佛自己懂很多的感觉,说了等于没说。
回复

使用道具 举报

🔗
hgon23 2020-11-28 16:32:50 来自APP | 只看该作者
全局:
不要用mockito
回复

使用道具 举报

🔗
Wangdong8500 2020-11-28 16:35:54 | 只看该作者
全局:
我的经验,unit test还是很有用的,特别是很复杂的code,对于非code author。举一个例子,我看到一些比较晦涩代码的时候,跑一跑test case,可以很快的了解output大概长什么样子,还可以customize一下testcase看一看behavior。如果没有unit test,你还需要写log,起service,很麻烦。

评分

参与人数 1大米 +1 收起 理由
armu + 1 赞一个

查看全部评分

回复

使用道具 举报

🔗
xiaomajia001 2020-11-28 16:43:32 | 只看该作者
全局:
TDD,测试即文档,先写测试再写代码
回复

使用道具 举报

🔗
nevergum 2020-11-28 21:44:05 | 只看该作者
全局:
有些 unit test 就是为了刷一下存在感 有没有用呢 有用 但是没啥用
回复

使用道具 举报

全局:
补充一点是, unit test是测试自己的代码逻辑,不是去测第三方库,别人的代码没必要自己再测。如果只是单纯调用API,是没必要写test的,因为这就是在测别人的代码。

Mock的好用之处在于耦合的时候,你和别人(其他程序员/API接口)约定好外部模组的行为方式/数据格式,然后mock掉,也是达到“只测自己代码逻辑”的目的。
回复

使用道具 举报

🔗
wangbo1987 2020-11-29 00:56:56 | 只看该作者
全局:
其他的好处各位网友都说了, 我再补充一点。单元测试是帮助你更好的写代码。如果你写代码放飞自我,那么写单元测试的时候就会教你做人。很多人讨厌写测试,不是因为单元测试不必要难写,是因为他们的代码组织结构有问题,过于复杂,有所谓的代码气味。
比如说你违反了law of demeter,传了一个很大的类进入函数,但是你实际用到的域在这个类的第三层。写测试的时候你就得构建这个类,这样就很烦。
比如一个函数写太长了,有很多分支,这样写测试也非常困难。就得重构。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表