Ответ 1
У меня тот же файл. После короткого расследования я признал себя виновным: этот файл создается адаптером NUnit 3.x. (Вы можете проверить его в AdapterSettings.cs из исходного кода адаптера NUnit).
Мы заметили, что на какой-то машине-разработчике версия отладки Visual Studio (2015 update 3) для решения С# создавала файл $RANDOM_SEED $вместе со всеми встроенными DLL.
Содержимое файла - это всего лишь одно число, например.
1443972318
Удаление файлов (ов), а затем восстановление привело к восстановлению файла с другим номером.
Это поведение наблюдалось также при перестройке одного проекта в решении (которое имеет только стандартные ссылки на С# refs/dependencies + System.Management).
Обратите внимание, что выполнение сборки командной строки, например.
msbuild <sln-file>
не регенерировать файл (для создания полного решения или одного проекта).
После перезапуска VS файл больше не восстанавливается.
Насколько нам известно, это имя файла не используется ни в одном из наших исходных кодов, post build steps или внутренних зависимостей. Существует довольно много зависимостей от классов .NET Framework, включая Random и RNGCryptoServiceProvider, а также внешние зависимости. У нас нет полного исходного кода для всех них, поэтому невозможно проверить исчерпывающе, если какая-либо из зависимостей несет ответственность.
Это немного выстрел в темноте, но вопрос Кто-нибудь видел что-то похожее на это?
ИЗМЕНИТЬ Я не удивлен, что это было приостановлено - я понимаю, что это довольно открыто, но поскольку я в настоящее время не могу воспроизвести это, и поскольку это может иметь потенциально серьезные последствия (атака генератора случайных чисел?), Я все равно разместил его. Если я смогу воспроизвести, я, конечно, буду обновляться здесь.
У меня тот же файл. После короткого расследования я признал себя виновным: этот файл создается адаптером NUnit 3.x. (Вы можете проверить его в AdapterSettings.cs из исходного кода адаптера NUnit).
Файл используется NUnit, чтобы гарантировать, что мы используем одно и то же случайное начальное значение для генерации случайных тестовых случаев как в процессах обнаружения, так и при выполнении. Это необходимо, потому что IDE использует два разных процесса для выполнения адаптера. Это не требуется (или создавалось) при запуске адаптера под vstest.console.exe.