"ABCDEFGHI".Should().StartWith("AB").And.EndWith("HI").And.Contain("EF").And.HaveLength(9); new[] { 1, 2, 3 }.Should().HaveCount(4, "because we thought we put three items in the collection")) dtoCollection.Should().Contain(dto => dto.Id != null); collection.Should().HaveCount(c => c >= 3); dto.ShouldHave().AllPropertiesBut(d => d.Id).EqualTo(customer); dt1.Should().BeWithin(TimeSpan.FromHours(50)).Before(dt2); Action action = () => recipe.AddIngredient("Milk", 100, Unit.Spoon); action .ShouldThrow() .WithMessage("Cannot change the unit of an existing ingredient") .And.Violations.Should().Contain(BusinessRule.CannotChangeIngredientQuanity