Jak uruchomić kod instalacyjny tylko raz w teście xUnit.net

Próbuję skonfigurować moje testy za pomocą Xunit. Mam wymóg usunięcia wszystkich obrazów w folderze na początku testów, a następnie każda metoda dokonuje zmiany rozmiaru obrazu i zapisuje kopię jego danych wyjściowych w folderze. Folder należy opróżnić tylko raz, a następnie każda metoda zapisuje własny obraz w folderze.

Kiedy używamIUseFixture<T>, theClearVisualTestResultFolder funkcja jest nadal wywoływana przed każdym testem, więc kończę na jednym obrazie w folderze.

public class Fixture
{
    public void Setup()
    {
        ImageHelperTest.ClearVisualTestResultFolder();
    }
}

public class ImageHelperTest : IUseFixture<EngDev.Test.Fixture>
{
    public void SetFixture(EngDev.Test.Fixture data)
    {
        data.Setup();
    }

    public static void ClearVisualTestResultFolder()
    {
        // Logic to clear folder
    }
}

Jeśli umieściłemClearVisualTestResultFolder w konstruktorze jest on również wywoływany raz dla każdej metody testowej. Potrzebuję tego tylko raz, zanim wszystkie metody testowe zostaną wykonane, jak mogę to osiągnąć?

Jeśli to ma znaczenie, używam biegacza testowego ReSharper.

questionAnswers(3)

yourAnswerToTheQuestion