华乐网
当前位置: 首页 >头条 >社会 >正文

代码测试意味着完全消灭了Bug?

2021-11-09 13:48    

日前,一位名为 Jens Neuse 的开发者在改进其 graphql 解析库的过程中,发现词法分析器和解析器中存在很多的低效率,因此不得不重构完整的代码库(https://medium.com/@jens.neuse/want-to-write-good-unit-tests-in-go-dont-panic-or-should-you-ba3eb5bf4f51)。在重构的过程中,Jens Neuse 认为测试至关重要。然而,本文作者却并不这么想,他认为测试并不意味着一切,接下本文将以 Go 语言为例,分析其原因。

作者 | martin

译者 | 梁蕊

来源 | CSDN(ID:CSDNNews)

我使用过的一些最难用的代码是“易于测试”的代码。代码将所有内容抽象到开发者难以想象发生了什么的程度,只是为了向原本非常简单的函数中添加“单元测试”。DHH 称这种为测试引起的设计损坏。

测试只是确保用户的程序正常运行的工具之一。另外一种非常重要的工具是以一种易于理解和推理(简单)的方式编写代码。

在此,推荐开发者可以查阅一本使用广泛的测试书籍,Robert C.Martin 编写的《Clean Code》,其中部分内容是为了响应更复杂的代码而写的,在这些程序中,你阅读了 1000 行代码,但仍然不知道发生了什么。我最近不得不将一个简单的 Java “表情符号替代品”(:joy:→

品牌、内容合作请点这里: 寻求合作 ››

榜单

今日推荐