Я электротехник, пытаюсь освоить программные инструменты, которые помогут мне в моей работе. Я знакомлюсь с git, но не так бегло, как эксперты.
У меня есть автоматизированная система тестирования для тестирования аппаратных устройств с использованием нескольких инструментов и проприетарного (устаревшего) программного средства автоматизации.
Программный инструмент использует текстовый файл, чтобы обрисовать в общих чертах все тестовые случаи, которые необходимо охватить, и способы их тестирования, и этот файл использует определенный синтаксис.
Однако мы используем одну аппаратную платформу для нескольких продуктов, каждый из которых имеет небольшие отличия от одного к другому (т. Е. Частотные варианты. Ради аргумента, представьте, что мы меняем определенные слова в тестовом файле на разные синонимы, основанные на географическом местоположении. В Северной Америке мы используем слово «Спасибо!», если мы продаем в Великобритании, мы используем «Cheers!», если мы продаем в Канаде, мы используем «Regards».
По мере разработки кодовой базы для различных сценариев тестирования существует несколько файлов>
Однако для каждого варианта частоты потребуются те же файлы, но в каждом файле эти синонимы будут изменены.
Поскольку мы продолжаем разработку, нам придется вносить изменения в каждый файл (добавлять больше строк тестовых случаев, исправлять ошибки), и эти изменения должны быть внесены в другие файлы с частотным вариантом.
К сожалению, мы не можем позволить всем файлам сосуществовать в одной и той же папке, иначе наша автоматизированная система увидит конфликты.
Итак, я пытаюсь это сделать:
Отличное git-репо для TestDefinitions
Файлы определения теста будут храниться в папке с соответствующим именем
- Transmit_Test.txt
- Receive_Test.txt
- Compliance_test.txt
Тогда в основном есть разные ветви для каждого варианта частоты
- Мастер (универсальный шаблон)
- частота_1
- частота_2
- частота_3
тогда, если мне нужно выполнить тест для продукта, который является другим вариантом, я просто проверяю ветку difnet.
Я не думаю, что в данный момент необходимо показывать некоторый код, но при необходимости я могу показать дампы того, как выглядит git repo.
Есть ли более эффективный способ сделать это?
Я понимаю, что я не использую Git так, как он был спроектирован,
и я боюсь, что у нас может быть 3 ветви, расходящиеся друг от друга, и там могут случайно слиться вещи, которые мы не должны.t
Должен ли я оставить это как есть и управлять изменениями независимо?
Должен ли я создать 3 разных репо?
Должен ли я вернуться к копированию и вставке?