3

我喜欢在我的代码中使用 ClaimsPrincipalPermission,但是有一个问题:授权代码干扰了单元测试。

你将如何解决这个问题?在我的脑海中,我可以想到三个解决方案:

  • 有一个单独的配置部分用于测试目的,加载一个身份验证管理器,该管理器总是对所有 CheckAccess 调用返回 true
  • 将代码片段添加到真正的身份验证管理器中,当单元测试运行时,该代码片段始终对所有 CheckAccess 调用返回 true
  • 创建在单元测试中不调用身份验证管理器的自定义授权属性

对于解决方案还有其他建议吗?如果您实施了上述解决方案之一,我很想看看您做了什么。

4

1 回答 1

2

使用始终为单元测试返回 true 的自定义 ClaimsAuthorizationManager。

PrincipalPermissions 通常对单元测试不太友好。

于 2013-03-15T15:36:56.287 回答