代码之家  ›  专栏  ›  技术社区  ›  dezox

如何对Active Directory对象创建进行单元测试?

  •  0
  • dezox  · 技术社区  · 2 年前

    我正在创建这样一个用户:

    using (var AD = new DirectoryEntry(myCOntainer, myUsername, myPassword))
                {
                    var user = AD.Children.Add("CN=testuser", "user");
                    user.Properties["samAccountName"].Value = "test01";
                    user.Properties["userAccountControl"].Value = Constant.NormalAccount + Constant.AccountDisable;
                    user.CommitChanges();
                    AD.CommitChanges();
                }
    

    为这种方法创建单元测试的最佳方法是什么?我认为在我的用户所在的真实广告上调用此方法将是一个错误的选择。此外,我必须确保删除测试创建的用户。

    1 回复  |  直到 2 年前
        1
  •  0
  •   Shabarinath    2 年前

    在我看来,如果您有一个专用的非prod环境,那么您可以使用它。如果您没有非prod环境,那么可以将现有active directory的一部分进行切片并加以利用,前提是目标仅用于测试AD对象的创建。

    通过切割生产广告,我的意思是有以下设置。

    1. 为此测试在产品广告中创建专用OU
    2. 创建服务帐户并仅在此测试OU上委派所需的访问权限
    3. 在代码上绑定测试OU位置和服务帐户,并完成测试

    只要服务帐户用于测试,我们就限制该测试OU内的访问。

    祝你好运