2015-02-06 36 views
1

在最近的一个项目中,我需要测试一个使用特定Git存储库的Java类。为了这个班级的工作,它必须走一条通向知识库的道路,然后发挥它的魔力。在JUnit中模拟Git回购

我感兴趣的是,是否可以在JUnit中模拟Git存储库,或通过任何其他方式提供可用于测试该类的模拟存储库。

使用专门用于此测试的实际Git存储库将是一个选项,但由于环境的性质,可能难以确保可以从其他开发人员可能用于运行测试的每台机器运行测试。此外,实际存储库不小,至少需要10分钟来克隆它。

到目前为止,我还无法找到任何方式来模拟JUnit测试类中可能有10 - 15次提交的存储库,因此每个建议都是值得欢迎的。

哦,是的,存储库理想情况下也会有多个子库/子模块,但我也很乐意提供一个提供单个回购的解决方案。

回答

1

夫妇建议的:

  1. 是否有可能包括测试资源的资源库的一部分?
    • 在这种情况下,您不必一遍又一遍地克隆它。
  2. 有更高级别的Java API来操纵git存储库。
+0

我们正在使用JGit查询回购,但这个想法是测试依赖于我们通过JGit访问回购的方法和类。 不幸的是,回购是太大,无法添加为测试资源。 现在我们已经解决了一些方法反应的嘲讽和残留,但是现在我们有一个单独的问题,在其他一些问题中已经解决。 – Chogos 2015-02-10 13:00:25