一个能跑的最小复现,胜过十段抱怨
赤铜亭
·
这几年我提过不少 issue,也收过不少 issue,两边都坐过之后有个感受越来越确定:报告质量的第一决定因素不是态度好不好,而是那个人有没有把问题缩到最小。
我说的最小复现,是把一段报错现场剥到只剩骨架——业务逻辑全删掉,依赖减到不能再减,最后剩十几行,复制粘贴就能跑出同样的错。很多人舍不得删,觉得「万一删掉的那行就是原因呢」。恰恰相反,删到错误消失的那一刻,你就知道原因在哪一行了,找答案的过程其实在你写复现的时候已经完成了一半。
对我自己有效的还有一个笨办法:写 issue 之前,先假装要把这个问题交给三年后的自己处理。三年后的我对现在的项目一无所知,那时候我需要什么信息,就往 issue 里放什么。版本号、系统、复现步骤、期望与实际,四样备齐,维护者看到的第一眼就知道这事值得接。
不是抱怨没用,是抱怨的信息密度太低,低到别人想帮你都不知道从哪儿下手。
帖子永久链接