Ryt*_*mis 7 c# impersonation unit-testing unmanaged
我想将一段使用Windows Impersonation API的代码包装成一个整洁的小助手类,并且像往常一样,我正在寻找一种先测试的方法.但是,虽然WindowsIdentity是托管类,但实际执行登录所需的LogonUser调用是另一个用户是advapi32.dll中的非托管函数.
我想我可以解决这个问题,为我的助手类引入一个接口,以便在实现中使用和隐藏P/Invoke调用,但测试该实现仍然是个问题.并且你可以想象,实际上在测试中执行模拟可能有点问题,因为用户实际上需要在系统上存在.
Gis*_*shu 12
指南:不要测试您未编写的代码.
您不应该担心WinAPI实现不起作用(很可能它按预期工作).您应关注的是测试"接线",即您的代码是否进行了正确的WinAPI呼叫.在这种情况下,您只需要模拟界面并让模拟框架告诉您调用是否使用了正确的参数.如果是的话,你就完成了.
| 归档时间: |
|
| 查看次数: |
1152 次 |
| 最近记录: |