2010-08-04 161 views

回答

136

可以在没有visual studio的情况下运行mstest.exe。
下载的代理商之一为Visual Studio ISO的下面,并在服务器上安装测试代理

Visual Studio 2017(127MB硬盘空间,小于下载)
Visual Studio 2015(128MB的设置,需要2GB磁盘空间)
Visual Studio 2012(224MB)
Visual Studio 2013(287MB)
Visual Studio 2010(515MB)

这将安装需要运行的一切命令行中的mstest.exe比Visual Studio轻得多。如果我没有记错的话,那么〜500mb的下载和大约300mb的安装只需要测试代理。

UPDATE

对于比VS 2017年的旧版本,看看这里:

https://www.visualstudio.com/vs/older-downloads/

+10

您可以下载[Visual Studio 2012代理](http://www.microsoft.com/en- us/download/details.aspx?id = 38186)。 – djeebus 2013-05-06 16:45:51

+0

在安装TestAgent和TestController之后放置MsTest.exe? – 2013-10-03 10:20:16

+3

C:\ Program Files \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ MSTest.exe – Foole 2013-10-23 00:20:35

4

我想你可能可以,但它绝对不支持。

我发现这篇博客文章是由某人声称MSTest在没有安装Visual Studio的情况下编写的。

+0

任何有Hacking这个词的URL都需要质疑努力的价值,如果MS决定改变它的实现,你的环境可能会变得不稳定,每次Windows更新都会发生意想不到的事情(我们会定期更新,对吗?)。 – Russell 2010-08-04 05:52:15

+0

在这种情况下,Windows更新似乎不太可能破解黑客行为。但更新版本的mstest(例如,VS的新版本或Service Pack中)可能会有所不同。 – 2010-08-04 06:25:13

+0

@Russell - 就我个人而言,我要么掏钱购买额外的VS许可证,要么只是使用NUnit。 – Justin 2010-08-04 06:34:44

4

@crocpulsar,你需要在你构建服务器,上安装Visual Studio,但你并不需要购买额外的许可证

只有太多依赖才能构建& MSTest在没有安装VS的情况下工作,并且最明显的是不支持。

只要启动构建的人拥有许可证,您就不需要构建服务器。自2005年黑暗的日子以来,情况一直如此,只要有版本平价,那么你就没问题。

如果团队中的每个人都拥有Ultimate,那么您可以自由将其安装在构建服务器上;但是如果您的团队成员中有一个拥有Premium,那么您应该在构建服务器上理想地安装Premium。这也使代码覆盖率,测试影响分析和体系结构验证等许多其他功能成为可能。

+0

。这是http://blogs.msdn.com/b/jeffbe上的微软发布的文章。 /archive/2008/03/18/licensing-team-system-editions-for-your-build-machine.aspx – Maslow 2010-08-19 14:31:24

1

下面是我让我的构建服务器,而无需安装VS 2012运行MSTest的步骤:

  1. 在c:\ dev中创建'Mstest'目录文件夹。
  2. 将C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE中的'Mstest.exe'和'Mstest.exe.config'复制到'Mstest'目录
  3. 复制Microsoft.VisualStudio。。在 'MSTEST' 文件夹
  4. QualityTools.UnitTestFramework.dll为 'MSTEST' 目录
  5. 创建 '组件' 目录提取的所有V11 Microsoft.VisualStudio.QualityTools *由C的DLL:\ WINDOWS \总成“MSTEST /组件'directory
  6. 复制所有'v11'Microsoft.VisualStudio.QualityTools。 .dlls和Microsoft.VisualStudio.TestTools。 .dll从C:\ Windows \ Microsoft.NET \ assembly \ GAC_MSIL复制到'Mstest/assemblies'
  7. 复制所有v11 Microsoft.VisualStudio.QualityTools。 .dlls和Microsoft.VisualStudio.TestTools。 .dll from C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ PrivateAssemblies to'Mstest/assemblies'
  8. 将'程序集'添加到'MsPath.exe.config'的'privatePath'属性中'
  9. 导出'HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/VisualStudio/11.0/Enterprise/QualityTools并将其应用于hudson框。
  10. 将QTAgent32.exe和QTAgent32.exe.config复制到C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE中的'MsTest'目录中
  11. 将'assemblies'添加到'privatePath'属性中在 'QTAgent32.exe.config'
  12. 复制 'msdia110.dll' 从 'C:\ Program Files文件(x86)的\微软的Visual Studio 11.0 \ Common7 \包\调试' 到 'MSTEST /组件'
  13. 注册'msdia110.dll'与c:/windows/syswow64/regsvr32.exe/i'../mstest/assemblies/msdia110.dll'(这个错误,但由于某种原因,它仍然有效,我跑了几次并在我检查之前尝试了不同的regsvr32.exe版本,但它在注册表中)

  14. 添加环境变量'MSTEST_HOME'并将其设置为'c:\ dev \ mstest \'或设置为您的路径。我在构建脚本中使用了环境变量。

调试MSTEST执行错误:

添加到 'MsTest.exe.config'

<system.diagnostics> 
    <trace autoflush="true" indentsize="4"> 
    <listeners> 
     <add name="EqtListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="C:\MsTest.log" /> 
    </listeners> 
    </trace> 
    <switches> 
    <add name="EqtTraceLevel" value="Verbose" /> 
    </switches> 
</system.diagnostics> 
0

MSTest的是announced for .NET Core用户。该公告包含dotnet工具的使用示例。我还没有想象如何获得独立的mstest可执行文件。

相关问题