DEV Community · Show DEV9/6 07:4556

13个仓库13个bug:开源教会我测试自己的工具

13 repositories, 13 bugs: what open source taught me about my own tool

阅读原文
作者构建了一个从仓库绘制架构图的工具,每条边都引用文件、行和提交。在13个未见过的仓库上测试,每个都发现了问题。工具规则是:无法解析的引用不静默丢弃,而是报告为缺口。测试发现Java中Guava的包前缀匹配导致Truth库被误认为Guava代码,产生834个假缺口(占28%);Java文件导入自身嵌套类型导致自依赖;静态导入指向过深导致106个错误事实;Go中跳过名为build的目录导致遗漏。作者强调,读取他人仓库的工具必须用他人仓库测试,没有替代品。