当VS2013以管理员身份运行时,MSTest将删除测试结果

时间:2014-02-16 13:11:29

标签: visual-studio unit-testing mstest administrator

我知道这听起来很奇怪,但事实就是如此)

我正在使用MSTest来运行我的单元测试。 在C#中使用VS2013 + ReSharper 8.1 +一些dll项目。 我正在调用一些API函数,这就是为什么我需要VS以管理员身份运行,否则这些调用将失败。

问题是:

由于某种原因,文件夹TestResults为空。 当测试正在运行但未完成时,我可以看到内部创建的新文件夹(User_Comp YYYY-mm-dd HH-MM-ss),包含所有测试输出,但一旦测试完成,此文件夹将被删除,因此TestResults为空。

我已经检查了我的项目选项 - >网络性能测试工具 - >测试执行 - >旧测试结果的限制数量设置为25。 我试图禁用ReSharper UnitTesting +禁用对MSTests,NUnit和JS的支持,但问题仍然存在。

在正常帐户(非管理员)下启动VS

在这种情况下,测试后不删除“TestResults \ User_Comp YYYY-mm-dd HH-MM-ss”文件夹。当然,在这种情况下,我的一些测试失败了。

我已将每个用户的完全访问权限设置为“TestResults”文件夹,但仍会删除结果。

看起来VS使用0作为测试结果的限制。 有没有人面对这个问题?

2 个答案:

答案 0 :(得分:15)

所有测试通过后,测试结果将被删除。 如果有任何失败,则不会删除结果。

答案 1 :(得分:3)

您是否尝试在Visual Studio中的Test项目中添加* .testsettings文件?

查看https://msdn.microsoft.com/en-us/library/jj635153.aspx,特别是" DeleteDeploymentDirectoryAfterTestRunIsComplete"设置