存储库中的大型测试数据集



假设我正在开发一些开源软件,用解释语言编写,作为Git仓库管理,需要一个大数据集(+300 MB)用于基本测试。

测试数据应该像源代码一样进入相同的存储库,使用compileToZipFile.sh脚本发布版本吗?将其存储为两个独立的存储库(srcRepotestRepo)会更好吗?

我想这个问题的最佳答案应该是基于需求。

在我的工作中,我们按照环境类型分隔代码/测试数据,例如:
    测试
  • QA
  • 举办
  • 生产

某些环境具有与生产相同的数据,而其他环境具有较旧的(或完全不同的)数据。这样做的好处是:

  • 沙盒测试,实施和"玩"新的想法/技术。
  • 你没有影响实时的、面向客户的数据。
  • 集成测试可以满足/专注于主代码库不可知的某些方面。
现在,关于你的问题……正如我上面提到的,数据的分离使我们能够快速做出更改并实现新功能,因为我们使用的数据集中在我们正在测试的上。我们有三个主干,它们都有独立的测试数据,这些数据是特定于需要测试的内容的。当测试View时,我们有一组测试,当测试Model时,我们有另一组测试,当测试Controller时,我们有另一组测试。最后,我们有一组全面的集成测试,在发布新版本时运行。除了最后一个之外,在所有情况下,测试都与创建它们的组件一起存在;但是,由于它们是集成测试,因此将它们与它们验证的三个部分分开保存是有意义的。

我认为你的想法很有道理。

最新更新