【问题标题】:How to copy resources to test at build time with gradle如何使用 gradle 在构建时复制资源以进行测试
【发布时间】:2017-03-28 19:01:55
【问题描述】:

我有一个 gradle 项目,资源中有一个 xslt 文件:

src/main/resources/xslt.sec/sec_report.xslt

在构建 w/gradle 时,我想使用该文件来覆盖:

src/test/resources/sec_report.xslt

这样我的单元测试总是使用最新版本/这个文件只有一个事实来源。实现这一目标的正确方法是什么?编写一个 shell 脚本并从 gradle 执行它,或者将其添加到构建任务中?

【问题讨论】:

  • 为什么不使用硬链接?您将拥有该文件的唯一“版本”。
  • @MikhailAntonov 我可以想到一个非常有说服力的理由:Git 等修订控制系统不支持硬链接。我不知道这在技术上是否可行,更不用说以可移植的方式(硬链接的实现细节高度依赖于平台)。

标签: java testing gradle


【解决方案1】:

您可以将文件添加到build.gradle 中的测试源集:

sourceSets {
  test {
    resources {
      srcDir 'src/test/resources'
      include 'src/main/resources/xslt.sec/sec_report.xslt'
    }
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    相关资源
    最近更新 更多