Описание тега fluent-assertions

Fluent Assertions - это набор методов расширения.NET, которые позволяют более естественно указать ожидаемый результат тестирования в стиле TDD или BDD и который пытается уберечь вас от ада отладчика. Нацелен на.NET Framework 4.5 и 4.7, а также на.NET Core 2.0, .NET Core 3.0, .NET Standard 1.3, 1.6 и 2.0. Поддерживает платформы модульного тестирования MSTest, MSTest2, Gallio, NUnit, XUnit, MBUnit, MSpec и NSpec.
4 ответа

FluentAssertion не удалось сравнить перечисляемые строки

Этот код работает нормально [Test] public void boo() { var collection = new[] { 1, 2, 3 }; collection.Should().Equal(1, 2, 3); } Но это не удается [Test] public void foo() { var collection = new[] { "1", "2", "3" }; collection.Should().Equal("1", "2…
02 фев '12 в 18:49
3 ответа

Как проверить свойства атомарно в Nunit

Учитывая объект с несколькими свойствами, скажем System.Drawing.Rectangle, я хотел утвердить значения ВСЕХ свойств (не останавливаясь, когда ОДНОЕ свойство не совпадало) и сообщить ВСЕ свойства. Я попробовал этот код, надеясь, что он будет делать то…
27 сен '13 в 21:21
1 ответ

FluentAssertions на основе отражения равно

У меня есть простой класс: public class MyClass() { public string Property1 {get;set;} public string Property2 {get;set;} } Можно ли как-то утверждать два экземпляра этого класса на равенство без реализации метода Equal (думаю, здесь хорошо подойдет…
21 фев '12 в 07:16
1 ответ

Утверждать, что в списке не должно быть строки

У меня есть утверждение вроде этого: validationResults.Select(result => result.Tag).ToList().Should().Contain(ServiceContractRuleKey.MedicalDeclarationNumberRequired "because a validation error should be added that the MedicalDeclarationNumber is…
12 июл '13 в 07:44
3 ответа

Свободные утверждения: как проверить пару значений ключа без регистра

У меня есть словарь типа Dictionary<string, object> который я пытаюсь утвердить с помощью Свободных Утверждений. Мне нужно проверить, содержит ли он ключ с именем "iss" и значение "ABC". Мне нужно сделать утверждение поля "значение", не рассма…
07 июл '16 в 17:55
1 ответ

Проверьте возвращаемое значение в синтаксисе исключений FluentAssertion

Я хотел бы проверить возвращаемое значение из метода по синтаксису FluentAssertion. Пожалуйста, рассмотрите следующий фрагмент: public interface IFoo { Task<int> DoSomething(); } public class Bar { private readonly IFoo _foo; private static in…
08 янв '19 в 13:09
1 ответ

MustBeEquivalentTo для объектов с разными типами

В моем тесте у меня есть результат типа HttpRequestMessage и мне нужно утверждать, что это собственность Content настроен на исправление объекта. Проблема в том, что HttpRequestMessage.Content имеет другой (базовый) тип, чем объект, с которым я хочу…
28 янв '14 в 10:18
1 ответ

VS/xUnit/FluentAssertions: укажите ссылку на файл в тестовом сообщении.

В некоторых моих тестах я сравнивал содержимое файлов XML с некоторыми ссылочными файлами (подход "золотые файлы"). Для сравнения файлов XML я использую XmlDiff, который выдает HTML, указывающий на различия файлов (см., Например, здесь). Теперь, есл…
1 ответ

FluentAssertions: должен содержать каждый элемент последовательности

У меня есть список, каждый элемент также должен отображаться в другом списке, но не обязательно в том же порядке. Я мог бы сделать утверждение с foreach, как это Assert.IsTrue(list1.Count == list2.Count); foreach(var element in list1) { Assert.IsTru…
08 авг '17 в 18:49
2 ответа

Строка Дата Сравнить

В тесте BDD я сравниваю даты. При сравнении даты в строках. Даже если обе даты совпадают, я получаю это сообщение, и тест не проходит Ожидаемый объект: "20.01.2012 12:00:00 AM", но обнаружен "20.01.2012 12:00:00 AM". Еще одна вещь, это происходит то…
30 окт '12 в 14:45
1 ответ

Свободные Утверждения Должны AllBeEquivalentTo

Я не уверен, было ли это в старой версии FluentAssertions, но я бы хотел сравнить коллекцию с другой коллекцией. У меня ДТО вроде так: public class UserDTO { public int Id { get; set; } public string Username { get; set; } } У меня есть два списка, …
22 июн '18 в 01:11
2 ответа

В поисках лучшей реализации для этого модульного теста

Я использую xUnit и FluentAssertions для написания своих модульных тестов, и я застрял в следующей проблеме. Поскольку я не реализовал catch (в GetCountriesAsync) из WebException все же, я бросаю новый NotImplementedException в этом месте. Этот код …
3 ответа

Свободные утверждения: Использование BeCloseTo в коллекции свойств DateTime

Я обрабатываю несколько элементов, каждый из которых содержит свойство DateProcessed (обнуляемый DateTime) и хочу утверждать, что это свойство установлено на текущую дату. К тому времени, когда он проходит через процедуру обработки, все даты немного…
16 июл '14 в 10:28
1 ответ

Свободные утверждения: проверить, содержит ли коллекция объект, эквивалентный предоставленному?

Я использую Fluent Assertions и хочу проверить, содержит ли моя коллекция какой-либо объект, используя глубокое сравнение графов объектов. Я не хочу реализовывать все это равенство членов. Тем не менее, я не могу найти способ сделать тест на предмет…
01 мар '17 в 13:53
1 ответ

У меня есть проект модульного теста, который ссылается на FluentAssertions, я получаю ошибки при обновлении до версии 3

У меня есть тестовый проект.net 4.0, который выбрасывает метод not found, исключения для метода расширения Should(). Затем я заметил, что он также генерирует исключения для типа int. Кто-нибудь знает, почему FluentAssertions V3 ведет себя так? Сейча…
29 апр '14 в 17:55
1 ответ

FluentAssertions завершается ошибкой при сравнении объектов, если одно свойство имеет значение null

Сценарий: у меня есть объект с нулевым свойством, которое будет обновляться при запуске тестируемого метода. В ожидаемом объекте я его не указываю, так как хочу проверить значение отдельно. Вот простая демонстрация теста using System; using FluentAs…
31 окт '13 в 18:32
2 ответа

Как я могу сообщить о названии объекта с беглыми утверждениями

У меня есть тест, который проверяет несколько объектов в таблице на нашем сайте. Тест написан на SpecFlow и C# Это выглядит примерно так: When I click proceed Then I should see the following values | key | value | | tax | 5.00 | | delivery | 5.00 | …
03 фев '16 в 12:11
1 ответ

Метод FluentAssertions .ShouldNotThrow() не найден в ver5.4.2, но найден в ver4.19.4

У меня есть цель проекта тестирования.net4.7.1. Я установил FluentAssertions ver5.4.2 через менеджер пакетов nuget в Visual Studio. По некоторым причинам такие вещи: someAction.ShouldNotThrow() Выдает ошибку о том, что ShouldNotThrow() не распознает…
07 ноя '18 в 10:58
3 ответа

Как утверждать все элементы в коллекции, используя беглые утверждения?

Скажем, я хочу протестировать метод, возвращающий кучу элементов следующего типа, используя беглые утверждения, чтобы убедиться, что все элементы имеют свои IsActiveфлаг установлен в true: public class Item { public bool IsActive { get; set; } } Что…
19 сен '13 в 16:08
1 ответ

Как использовать Исключение в FluentAssertions, чтобы исключить определенную пару KeyValue в Словаре

Я использую FluentAssertions с ShouldBeEquivalentTo сравнить два словаря типа Dictionary<string, string> но хотите исключить одну или несколько конкретных пар KeyValue (поскольку в этом случае они содержат метки времени). Как это сделать? Я пр…
15 ноя '17 в 20:18