unit-testing - 在单元测试中重复的代码是否更容易被容忍?

标签 unit-testing dry code-duplication

前一段时间,当我检查并重构它们以使其更加完善时,我破坏了几个单元测试 DRY ——每次测试的目的不再明确。测试的可读性和可维护性之间似乎需要权衡。如果我在单元测试中保留重复的代码,它们会更具可读性,但是如果我更改 SUT ,我必须追踪并更改重复代码的每个副本。

您同意这种权衡的存在吗?如果是这样,您希望您的测试具有可读性还是可维护性?

最佳答案

可读性对于测试来说更重要。如果测试失败,您希望问题显而易见。开发人员不必费力地检查大量经过大量考虑的测试代码来确定到底是什么失败了。您不希望您的测试代码变得如此复杂,以至于您需要编写单元测试测试。

但是,消除重复通常是一件好事,只要它不会掩盖任何内容,并且消除测试中的重复可能会带来更好的 API。只要确保您不会超出 yield 递减点即可。

关于unit-testing - 在单元测试中重复的代码是否更容易被容忍?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/129693/

相关文章:

python - 如何在我的评分系统函数中简化重复的 if-elif 语句?

java - 将额外代码插入 Java for 循环

java - 将功能注入(inject)两个没有公共(public)父类(super class)的类

java - 如何重构 switch 语句的重复代码片段

java - 为接口(interface)的多个实现编写单个单元测试

php - 如何在命令行开始使用 PHPUnit?

language-agnostic - DRY 没有单个代码?

AngularJS,用于 CRUD UI 的 DRY Controller

java - 在 Java 中模拟文件

c++ - 如何使用 CMake 对库的私有(private)特性 (TDD) 进行单元测试