Я пишу несколько интеграционных тестов API ядра .NET, которые проверяют, правильно ли работает механизм загрузки файлов.
Мой вопрос: как лучше всего хранить файлы, которые я буду тестировать при загрузке? Мне нужно тестировать файлы размером 2+ гигабайта. Не кажется хорошей идеей включать эти тестовые файлы в систему управления решением / исходным кодом, поскольку они такие большие, поэтому какой рекомендуемый путь я выберу для написания интеграционных тестов для больших файлов?
1 ответ
Я вижу два варианта
# 1 Если содержимое файла не важно, я бы сгенерировал поток размером xGB на лету (например, сериализуйте массив с парой миллионов ссылок на одну и ту же сложную структуру). Попробуйте создать правильный файл в консольном приложении и сохранить его локально, чтобы сначала проверить, соответствует ли он вашим ожиданиям.
# 2 Я бы рекомендовал разместить эти файлы в хранилище Azure. При необходимости вы можете сгенерировать подходящие токены SAS, чтобы сделать этот файл доступным напрямую через http-адрес, или загрузить их в виде потока с помощью BlobStorage Nuget Package. Хранилище BLOB-объектов также дешево. Или используйте любой сервер, на котором эти файлы могут быть размещены и доступны в ваших интеграционных тестах.
Однозначно не включайте эти файлы в проект!
Похожие вопросы
Новые вопросы
.net-core
.NET Core является преемником .NET Framework с открытым исходным кодом. Он может использоваться в самых разных приложениях и в различных областях: от серверов и центров обработки данных до приложений и устройств. .NET Core поддерживается Microsoft на Windows, Linux и macOS.