【问题标题】:When should I externalise XML fragments in my unit tests? [closed]我什么时候应该在我的单元测试中外部化 XML 片段? [关闭]
【发布时间】:2017-09-19 15:45:31
【问题描述】:

我和一位同事就单元测试中使用的 XML 片段是否应该存在于测试文件中还是应该外部化进行了一次有趣的辩论。

在一些测试中,我们使用完整的 XML 文件作为输入,而在其他测试中,我们使用片段来测试部分处理,片段的长度可能或多或少 5 行。

我的同事主张将 XML 保留在那里,以便它与本质上依赖于它的测试代码并排放置。我个人主要反对两件事:将 XML 嵌入源代码中导致的尴尬(有趣的格式、潜在的换行问题、必须转义字符等)以及大量 XML 对源文件的垂直影响。

我很好奇是否有任何关于在源代码控制中最小化垂直使用的好处的具体研究,或者是否有任何强烈的论据支持这两种方法,而不仅仅是基于意见的方法。我是一个重度 IDE 用户 (IntelliJ),所以对于更多面向 CLI 的用户来说可能存在一些我没有考虑过的问题?

【问题讨论】:

    标签: java unit-testing embedding


    【解决方案1】:

    没有硬性规则,但 Java 中缺少原始字符串使它看起来很丑。另一方面,除非您实际测试 XML 解析,否则我只会将外部 XML 文件用于回归和集成测试,而将纯 java 代码(有或没有 Builders)用于所有其他用例。它更容易在测试用例之间重用,并且在重构时需要的修改更少 - IDE 将在代码中进行必要的更改,而不是在 XML 文件/字符串中。

    【讨论】:

      猜你喜欢
      • 2012-06-15
      • 1970-01-01
      • 1970-01-01
      • 2011-03-21
      • 1970-01-01
      • 2014-05-21
      • 2011-05-14
      • 1970-01-01
      • 2012-12-23
      相关资源
      最近更新 更多