2017-01-06 10 views
0

Использование «xunit»: «2.2.0-beta4-build3444» с ядром ASP.NET У меня есть два интеграционных теста, которые взаимодействуют с одной и той же базой данных и засевают некоторые данные используя IClassFixture:Следующий тест xUnit запускается перед предыдущей очисткой в ​​IClassFixture

// FooTestData inserts two rows in TableA 
// In FooTestData.Dispose() the rows are deleted 
public class FooTest : IClassFixture<FooTestData> 
{ 
    [Fact] 
    public void Test() 
    { 
     var result = GetAllRowsFromTableA() 
     // Assert that result.Count == 2 
    } 

} 

// BarTestData inserts one row in TableA 
// In BarTestData.Dispose() the row is deleted 
public class BarTest: IClassFixture<BarTestData> 
{ 
    [Fact] 
    public void Test() 
    { 
     // Do something 
    } 
} 

FooTest.Test терпит неудачу, потому что она начинается до BarTestData.Dispose() называется. Количество строк в базе данных равно 3, если я запускаю все тесты сразу (не в параллель). Как это исправить?

UPDATE Похоже, что тесты проводятся в parallell даже если я скажу им, чтобы не (не выбирая «Запуск в parallell» в Visual Studio)

ответ