1
zsc8917zsc 2020-07-31 10:02:26 +08:00
这么有时间,是家里有矿嘛
|
2
whitehack 2020-07-31 10:13:34 +08:00
一般就对大的逻辑做几个整体测试..结束..没那时间一个一个小功能的抠
|
3
preyta 2020-07-31 10:14:06 +08:00
根据项目的规模和要求确定吧
|
4
maichael 2020-07-31 10:17:05 +08:00
做取舍呗,根据该功能的重要性来决定覆盖率的要求。
|
5
mmrx 2020-07-31 10:22:16 +08:00
只能说理论说理论,实际论实际
|
6
wenjy 2020-07-31 10:29:04 +08:00
公司的项目,时间充裕的话尽量覆盖(因为维护的人是你自己,不想改代码瑟瑟发抖),外包的话,有单元测试吗??
|
7
janxin 2020-07-31 10:30:49 +08:00
不一定,但是要有最低标准
|
8
heguangyu5 2020-07-31 11:52:19 +08:00
如果你把测试覆盖率当作开发者的辅助工具,而不是考核指标的话,这事就好办了。
|
9
dilu 2020-07-31 14:01:34 +08:00 via Android
顺便说一句,行覆盖率≠开发质量
|
10
jaylee4869 2020-07-31 15:31:23 +08:00
不需要。核心关注一下 if else 、switch 。
|
11
ShutTheFu2kUP 2020-07-31 15:54:46 +08:00
我反正之后都要做到了,昨天写了个憨逼循环,往公司生产库插入了几亿条数据...
|
12
TtTtTtT 2020-07-31 16:07:18 +08:00
有必要性。
但是看你们团队的取舍。 单元测试用于确认你的代码符合你的 design,所以是一份非常有价值的文档和设计。 一旦出现变更,单元测试和书面文档比,性价比非常高。 尽管如此,如果测试资源便宜的话,或者变更时效性要求非常高的场合,都可以被省略的。 |
13
FlushHip 2020-07-31 16:10:02 +08:00
行覆盖太扯了,业务代码多打点日志不香吗,对核心的底层模块也不用行覆盖,函数覆盖就够了。
|
14
dinjufen 2020-07-31 16:20:30 +08:00
@ShutTheFu2kUP 结果怎样?
|
15
Leigg 2020-07-31 16:23:10 +08:00 via Android
@ShutTheFu2kUP 我笑了,有后续吗
|
16
ZehaiZhang 2020-07-31 16:24:46 +08:00
@ShutTheFu2kUP 问题不大,不用走人
|
17
azcvcza 2020-07-31 16:27:26 +08:00
如果尊重开发规律的话,每个函数都加,每个流程都加,每个业务都加那肯定好,但是这样国内又不会算你的 KPI 。国内一般只注重 0->60 ; 60->100 没谁会记功
|
18
nutting 2020-07-31 16:30:40 +08:00
怎么可能,测试的逻辑还能通吗。按方法吧
|
19
ShutTheFu2kUP 2020-07-31 16:49:57 +08:00
@dinjufen 没咋样,昨天删了一天,今天再删一天应该就正常了。
@Leigg 后续就是疯狂删数据 @ZehaiZhang 确实,还不至于到要走人的地步... 主要是 MySql 超过亿级以后查询太慢了,处理一个要等好久,庆幸的是这张表的数据占用字节都比较少.. |
20
Umenezumi 2020-07-31 17:29:55 +08:00
@ShutTheFu2kUP 要是进 hive 和正式数据耦合了 你就等死吧 哈哈
|
21
msg7086 2020-07-31 18:29:02 +08:00
最重要的是行为测试。单元测试看情况,本身分得太细的函数我觉得没必要精准覆盖。上层业务逻辑带到就行了。
|
22
PainAndLove 2020-07-31 21:56:57 +08:00
CY
|
23
huluhulu 2020-07-31 22:14:36 +08:00 via iPhone
我司要求
line coverage > 80% branch coverage> 60% |
24
kaneg 2020-07-31 22:25:40 +08:00 via iPhone 1
单元测试是开发人员在自己可控范围对自己的一种保护。除了一些极端的边界情况只有在生产环境才会出现,其他大多数情况都是可以通过单元测试来确保其行为是符合预期的。
你想,自己提交的代码上线后睡个安稳觉它不香吗? |
25
nianyu 2020-07-31 22:55:37 +08:00
不需要
|
26
nznd 2020-07-31 23:01:48 +08:00
我司 想进测试系统需要 UT>40% 分支
想出测试系统,做 release 需要 UT>90% 分支 (好像不大于也没事 就是部门 boss 会被批 但是没人试过( 不过周期一般比较长 一个季度 release 一次 最长的两年多 |
28
Perry 2020-07-31 23:19:50 +08:00 via iPhone
工具齐全的话,100% 不难
|
30
scnace 2020-08-01 11:53:21 +08:00 via Android
写单测其实可以从侧面帮开发者更好地抽象代码模块
|
31
sariya 2020-08-01 11:56:44 +08:00 via Android
不存在的…比较独立的模块可以单测,大部分还是要集成测试,不然鸭子类要写到吐
|
32
mreasonyang 2020-08-01 15:23:13 +08:00 via Android
这要看你们有没有 QA 团队
|
33
changwei 2020-08-01 18:58:10 +08:00 via Android
看你的用户群体,如果是对内部做的系统,用户通常不会提交太奇怪的数据,那就没必要做,如果是对外做的系统,什么人都用,甚至可能会有黑客来攻击,那肯定得覆盖各种异常输入的逻辑。另外,通常做开发都是防御式编程吧,得假设用户提交数据都有可能是错误或者超范围超值域的情况。
|
34
fishCatcher 2020-08-02 01:11:36 +08:00 via iPhone
有些错误场景非常刁钻根本没法定义,或者说测试的时候根本想不到那里会出错,100%覆盖是不可能的
|