在“C# in Depth 2nd Edition”中,Jon Skeet 的书——我刚读到第 2 部分结束——在 7.7.3 中提到它InternalsVisibleTo
也可以与签名程序集一起使用。目前我根本没有使用签名。已发布二进制文件的安全问题实际上非常关键,因此我计划使用预处理器变量测试完全删除发布程序集的属性。
只是为了兴趣,使用签名的程序集和InternalsVisibleTo
? 为了InternalsVisibleTo
用于指定签名的朋友程序集,我需要指定它的公钥。我只有在编译了依赖于被测程序集的朋友程序集之后才拥有它(动态程序集加载和反射抛开,什么会膨胀编码和可读性)。这听起来像是一个鸡蛋问题,需要测试程序集的引导程序。我可以想象一些使用 MSBuild 和脚本来自动执行此操作的技巧。有没有更实用的方法来做到这一点?
如果它仍然如此乏味,我将坚持我的第一个想法,即为发布版本放弃单元测试(这有点令人不满意,因为可能会未经测试微妙的时间问题......)