Интеграционное тестирование в MSTest
При интеграционном тестировании подготовка, действие, подготовка для утверждения - всё занимает довольно длительное время.
Использую MSTest
Я делаю:
- Подготовка
- Действие
- Много утверждений
Если в Assert
нет какого либо комментария. сложности с определением в каком именно сбой.
Было бы наверно правильно, каждый Assert
в разном упорядоченном методе проводить с ранее выполненной одной подготовкой и действием на все, но в том же MSTest
упорядочивание возможно только по алфавиту).
Как вы выкручиваетесь? Пишите комментарии?
Псевдокод
[TestMethod]
public async Task UnitWorkAsync()
{
// Подготовка
await TestHelper.CleanDataBaseAsync();
await TestHelper.FillDataBaseAsync();
MyComponent myComponent = MakeMyComponent();
// Действие
for (int i = 0; i < TestHelper.DataList.Count; i++)
{
await myComponent.UnitWorkAsync();
}
// Подготовка для утверждений
List<MyObject> myObjects = await TestHelper.GetMyObjectsFromDataBaseAsync();
// Утверждение
Assert.IsTrue(myObjects.Count > 0);
// ... и т.д. много Assert
}