Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Fluent验证单元测试_C#_Unit Testing_Fluentvalidation - Fatal编程技术网

C# Fluent验证单元测试

C# Fluent验证单元测试,c#,unit-testing,fluentvalidation,C#,Unit Testing,Fluentvalidation,以下是我尝试测试的规则: RuleFor(m => m.Groups) .SetValidator(new MustContainAtLeastOne<AuthGroup>()) .OverridePropertyName("Roles"); RuleFor(m=>m.Groups) .SetValidator(新的mustContaineAtleastone()) .OverridePropertyName(“角色”); 测试: validato

以下是我尝试测试的规则:

 RuleFor(m => m.Groups)
      .SetValidator(new MustContainAtLeastOne<AuthGroup>())
      .OverridePropertyName("Roles");
RuleFor(m=>m.Groups)
.SetValidator(新的mustContaineAtleastone())
.OverridePropertyName(“角色”);
测试:

validator.ShouldHaveValidationErrorFor(m => m.Groups,new List<AuthGroup>());
validator.shouldSaveValidationErrorfor(m=>m.Groups,new List());
问题:

当我有
.OverridePropertyName(“角色”)
时,它失败,但当我删除它时,测试通过


这是Fluent Validation Validator类的问题吗?

在项目网站上发布问题:

我相信TestHelper会将lambda表达式中指定的属性名称与生成的错误消息中的属性名称进行比较。在这种情况下,因为您已经覆盖了它们不匹配的属性名,所以断言失败。在这种情况下,您需要手动执行断言,而不是使用TestHelper


在项目现场发布问题:

我相信TestHelper会将lambda表达式中指定的属性名称与生成的错误消息中的属性名称进行比较。在这种情况下,因为您已经覆盖了它们不匹配的属性名,所以断言失败。在这种情况下,您需要手动执行断言,而不是使用TestHelper