51Testing软件测试论坛

标题: 如何根据用户名(非当前登录用户)获得所属的用户组? [打印本页]

作者: liyb1979    时间: 2012-5-30 09:55
标题: 如何根据用户名(非当前登录用户)获得所属的用户组?
在QC代码编写中如何根据用户名(非当前登录用户)获得所属的用户组?谢谢各位大侠帮忙!
作者: May_may    时间: 2012-5-30 17:37
不是有User.IsInGroup 可以判断么
作者: liyb1979    时间: 2012-5-31 08:42
比如用户名为“chenh”,这只是一个字符串啊,不是User啊。咋样转化成User?User.IsInGroup 只是判断当前用户吧?我想要的是通过字符串的用户名判断是否在某一个组中啊。
作者: May_may    时间: 2012-5-31 09:28
Set usr = tdconnection.customization.Users.User(username)
可以用username来传递设置User信息
作者: liyb1979    时间: 2012-6-1 09:53
好的,谢谢!我试试,关于TDConnection我没用过,插件已经安装了,马上调试一下!
作者: liyb1979    时间: 2012-6-1 10:25
msgbox  "第一责任人: "+Bug_Fields("BG_USER_31").Value
'此处有值
     Set usr = tdconnection.customization.Users.User(Bug_Fields("BG_USER_31").Value)
       msgbox  "用户: "+usr
'此处就没有值了,后边都不好用了!!
        msgbox  "是否在需求组: "+usr.IsInGroup("需求组")
        msgbox  "是否在开发组: "+usr.IsInGroup("开发组")
还请大侠帮忙啊,领导非得要这个需求,愁死了!!
作者: May_may    时间: 2012-6-1 11:04
usr是对象当然msgbox不会有值啊
IsInGroup可以用if语句来判断
if usr.IsInGroup("需求组") then
msgbox  "在需求组"
end if
作者: liyb1979    时间: 2012-6-1 11:22
我把  msgbox  "用户: "+usr   删掉了:
     Set usr = tdconnection.customization.Users.User(Bug_Fields("BG_USER_31").Value)
       if  usr.IsInGroup("需求组") Then
           msgbox  "在需求组"
        '这里就没有值,我做的数据是需求组的,是符合逻辑的,我怀疑usr目前没有被赋值,是不是tdconnection没有连接上QC数据库啊?或者我还是缺少什么了?
作者: May_may    时间: 2012-6-1 14:28
介个我也不清楚
不过我刚才试了下,好像这样usr.isingroup 实现有的问题
我改了下用
Set usr = tdconnection.customization.Users.User(username)
for i=1 to usr.GroupsList.count
  UserGroup= usr.GroupsList().Item(i).Name
  Msgbox UserGroup
next
可以取出该用户所有的组
你用tdconnection.conneted 写个if看看是不是连上了,但我直接用tdconnection就可以的啊




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2