В моем приложении C ++ у меня есть текстовый файл (dataFile.txt), который установлен на целевой машине Linux по следующему пути:
/SoftwareHomeDir/Configuration/Application/dataFile.txt
Этот файл существует в моей среде исходного кода Rational ClearCaseпо пути:
/ProjectName/config/Application/dataFile.txt
Я разрабатываю unitTest в gtest, который выполняет следующие действия:
Считайте конкретные данные из dataFile.txt
, если данные не существуют, чем запишите их вфайл.
1) Я избегаю создавать переменную среды, чтобы проверить, нахожусь ли я в среде компиляции или на целевой машине.Затем добавьте дополнительный тестовый код в финальную версию.Я действительно хочу отделить тестовый код от окончательного кода.
2) Я не использую какую-либо IDE (без визуальной студии, без qt и т. Д.), Просто блокнот ++
3) Компиляция.сервер является общим (доступ с именем пользователя, однако корневая папка "/" является общей. Это означает, что если я создам путь "/SoftwareHomeDir/Confiugration/Application/dataFile.txt"
, он будет виден всем пользователям, и если другой пользователь запускает свой gtest unitTest, онможет перезаписать мой файл.
4) В конечном коде путь к файлу данных жестко запрограммирован, и реализация метода поиска файлов (имя файла) для поиска очень затратна (займет несколько секунд)для файла на всем жестком диске перед чтением файла.
Вопрос:
Я ищу решение для модульного тестирования моего кода в среде компиляции, использующего /ProjectName/config/Application/dataFile.txt