У меня есть несколько экземпляров и свойств, которые я хотел бы проверить с помощью XUnit.
myInstance.SomeProperty1.Should().HaveCount(2);
myInstance.SomeProperty2.Should().HaveCount(2);
[...]
myInstance.SomePropertyN.Should().HaveCount(2);
Когда это завершение не удается, они выдают следующие исключения:
Xunit.Sdk.XunitException
Expected collection to contain 2 item(s), but found 0.
at FluentAssertions.Execution.XUnit2TestFramework.Throw(String message)
at FluentAssertions.Execution.AssertionScope.FailWith(String message, Object[] args)
at FluentAssertions.Collections.SelfReferencingCollectionAssertions`2.HaveCount(Int32 expected, String because, Object[] becauseArgs)
at [...]
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Xunit.Sdk.TestInvoker`1.<>c__DisplayClass48_1.<<InvokeTestMethodAsync>b__1>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Xunit.Sdk.ExecutionTimer.<AggregateAsync>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Xunit.Sdk.ExceptionAggregator.<RunAsync>d__9.MoveNext()
Все идет нормально.Но как я могу сделать исключение более значимым?Я хотел бы видеть название свойства, на котором не удалось подтвердить.
Дело в том, что это довольно большие объекты, и тестирование всегда занимает довольно много времени.Знание, на каком свойстве тесты не пройдены, ускорит мой процесс тестирования.Заранее спасибо!