2013-06-03 5 views
6

Предположим, что я разрабатываю программное обеспечение с открытым исходным кодом, написанное на интерпретируемом языке, управляемое как репозиторий Git, для которого требуется большой набор данных (+300 МБ) для базового тестирования.Большой тестовый набор данных в репозитории

Если тестовые данные попадают в тот же репозиторий, что и исходный код, с сценарием compileToZipFile.sh для публикации релизов? Было бы лучше хранить как два отдельных хранилища, а srcRepo и testRepo?

Любые лучшие практики/конвенции будут оценены.

ответ

1

Я полагаю, что лучший ответ на этот вопрос будет основан на необходимости.

В моей работе, выделим наши данные кода/тест по типу среды как:

  • Тест
  • QA
  • Балетмейстер
  • Производство

Некоторые среды имеют те же данные, что и производство, тогда как другие имеют более старые (или совершенно разные) данные , Преимущества этого:

  • Песочницы для тестирования, реализации и «игры» с новыми идеями/технологиями.
  • Вы не влияете на живые данные, обращенные к клиенту.
  • Интегрированные тесты могут быть удовлетворены/сфокусированы на определенных аспектах, которые являются агностическими для основной базы кода.

Теперь, что касается ваших вопросов ... как я уже говорил выше, разделение данных позволяет нам быстро вносить изменения и реализовать новые возможности, так как данные, которые мы используем сфокусирован на то, что мы тестируем. У нас есть три соединительных линии, которые имеют независимые тестовые данные, которые являются специфическими для того, что нужно протестировать. При тестировании View у нас есть набор тестов, при тестировании Model у нас есть еще один набор тестов, и при тестировании Controller у нас есть еще один набор тестов. Наконец, у нас есть сложный набор интеграционных тестов, которые запускаются при выпуске новой сборки. Во всех случаях, кроме последнего, тесты соответствуют компоненту, для которого они созданы; но опять же, поскольку они являются интеграционными тестами, имеет смысл, что они хранятся отдельно от трех частей, которые они проверяют.

Я думаю, что ваша идея прочная.

Смежные вопросы