Могу ли я изменить строку подключения в приспособлениях класса xUnit?C#

Место общения программистов C#
Anonymous
Могу ли я изменить строку подключения в приспособлениях класса xUnit?

Сообщение Anonymous »

Я реализовал DatabaseFixture, аналогичный примеру в документации xUnit, который выглядит следующим образом:

Код: Выделить всё

public class DatabaseFixture : IDisposable
{
public DatabaseFixture()
{
Db = new SqlConnection("MyConnectionString");

// ... initialize data in the test database ...
}

public void Dispose()
{
// ... clean up test data from the database ...
}

public SqlConnection Db { get; private set; }
}

public class MyDatabaseTests : IClassFixture
{
DatabaseFixture fixture;

public MyDatabaseTests(DatabaseFixture fixture)
{
this.fixture = fixture;
}

// ... write tests, using fixture.Db to get access to the SQL Server ...
}
Но я хочу запустить тесты в нескольких средах, в которых строка подключения к базе данных может измениться. Я понимаю, что xUnit не поддерживает параметризованные ctors в определениях фикстур, но жесткое кодирование строки неудобно. Учитывая, что фикстуры инициализируются на очень ранней стадии жизненного цикла тестирования, как я могу изменить эту строку в зависимости от того, где выполняются тесты?

Подробнее здесь: https://stackoverflow.com/questions/790 ... s-fixtures

Вернуться в «C#»