Version control 我是否应该在源代码repo中使用大量测试数据进行回归测试?

Version control 我是否应该在源代码repo中使用大量测试数据进行回归测试?,version-control,Version Control,我有一套总共几兆字节的脚本和模块。回归测试和必要的数据是数百兆字节的b/c,这与我们处理的数据的性质有关。用实际的源代码保存回归测试和大型测试数据是“最佳实践”吗 注意,有一组单独的单元测试,它们要小得多,用于测试单个模块。但一系列主要管道需要真实(大)数据才能发挥作用 我认为你应该看看在这里起作用的各种力量 特定版本的测试(及其数据)测试特定版本的代码。因此,希望能够同时提交对测试和代码的更改 在源代码管理下使用大型测试集可能会损害不总是需要它们的人的性能:“svn签出”(或“clearto

我有一套总共几兆字节的脚本和模块。回归测试和必要的数据是数百兆字节的b/c,这与我们处理的数据的性质有关。用实际的源代码保存回归测试和大型测试数据是“最佳实践”吗


注意,有一组单独的单元测试,它们要小得多,用于测试单个模块。但一系列主要管道需要真实(大)数据才能发挥作用

我认为你应该看看在这里起作用的各种力量

  • 特定版本的测试(及其数据)测试特定版本的代码。因此,希望能够同时提交对测试和代码的更改

  • 在源代码管理下使用大型测试集可能会损害不总是需要它们的人的性能:“svn签出”(或“cleartool mkview-snaphost”,或您所拥有的东西)会复制大量文件,测试运行时间会变长,等等。因此,最好将大小分开,来自单元测试的集成测试

我的结论是将它们保存在一个存储库中,但要确保有一种方法可以处理除大型测试及其大数据之外的所有内容。例如,在Subversion中,可以有文件夹
/code/src
/code/test/unit
/code/test/integration
,和
/testdata
。这样,许多开发人员就可以“svn checkout…/code”,而忽略大型测试集。您的持续构建工具将使用整个树,以便它可以运行集成测试