如何在VS中以不同的用户身份运行单元测试?

时间:2013-01-28 22:01:01

标签: visual-studio-2010 unit-testing authentication

我是承包商,正在进行一些单元测试,使用Windows身份验证来命中不同域中的测试服务器。我一直在我的客户端VM上运行我的测试,因为我在他们的网络上,并且在他们的域上使用我的登录凭据来运行单元测试,所以一切运行正常。不幸的是,虚拟机非常慢,(服务器重启需要30分钟,而且我提出了14个项目解决方案),我决定尝试在我的笔记本电脑上运行VS.我能够让它构建得很好,但是当我去运行我的单元测试时,它会在尝试访问测试服务器时出错,因为我在我的笔记本电脑上运行,而不是在他们的域中。< / p>

有没有办法以不同的用户身份运行单元测试?

我尝试使用C:\ Windows \ System32 \ runas.exe / netonly / user:theirDomain \ uid“C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ devenv.exe”来运行测试,但它不起作用(我猜测因为单元测试实际上作为QTAgent32.exe运行,它不起作用)。我已经能够使用相同的命令SQL Server管理器连接到他们的SQL服务器。

另一个选择可能是找出一种方法来在我的笔记本电脑上信任我的域上的用户凭据,但这也不起作用......

2 个答案:

答案 0 :(得分:1)

您可以使用命令行应用程序mstest.exe直接运行单元测试。这就是VS在引擎盖下做的事情。结合runas.exe,我认为应该完全解决你的问题。

mstest.exe的参考: http://msdn.microsoft.com/en-us/library/ms182489(v=vs.80).aspx

编辑: 我只是想说,为了提高效率,我认为理想的解决方案是让他们的系统管理员创建一个域帐户供您使用。

答案 1 :(得分:0)

如果您拥有域帐户,则可以提升VPN连接或将笔记本电脑添加到其域中。