Возможно, есть несколько вариантов, которые я вижу.Простое решение, которое может работать для вас, - это иметь переменную уровня класса в вашем классе модульного теста, которая хранит путь к файлу, используемому текущим выполняемым тестом.Пусть каждый тест назначит текущий путь к этой переменной.Тогда у вас может быть один метод очистки, который использует эту переменную для очистки файла.
Другая идея, но для которой может потребоваться значительный рефакторинг, заключается в использовании подхода внедрения зависимостей для абстрагирования вашегокод из файловой системы.Возможно, вместо вашего кода, создающего / открывающего сам файл, вы могли бы иметь дескриптор компонента абстракции ввода-вывода, создающего файл, а затем просто возвращать объект Stream в ваш основной код.При запуске модульных тестов вы можете предоставить своему основному коду версию модульного тестирования компонента абстракции ввода-вывода, которая будет возвращать MemoryStream вместо FileStream, что позволит избежать необходимости выполнять очистку.Я мог бы обновить пример, если мое объяснение не ясно.