C# 添加.runsettings文件时TFS生成失败
我试图从VS中指定一个runsettings文件,以添加一些覆盖率规则 自从我添加了它,其中一个测试开始失败 该测试使用反射加载依赖程序集,并对其类执行一些验证C# 添加.runsettings文件时TFS生成失败,c#,unit-testing,reflection,tfs,C#,Unit Testing,Reflection,Tfs,我试图从VS中指定一个runsettings文件,以添加一些覆盖率规则 自从我添加了它,其中一个测试开始失败 该测试使用反射加载依赖程序集,并对其类执行一些验证 String FluentMigratorFullName = "MyAssembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null"; var fluentMigratorAssemblyName = new AssemblyName(FluentMigratorFull
String FluentMigratorFullName = "MyAssembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null";
var fluentMigratorAssemblyName = new AssemblyName(FluentMigratorFullName);
var fluentMigratorAssembly = Assembly.Load(fluentMigratorAssemblyName);
我得到的错误是:
System.IO.FileNotFoundException:无法加载文件或程序集“MyAssembly,Version=0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件
这在当地很管用
我知道有一个AssemblyResolution参数,但每次执行时位置都会不同,因为它取决于拾取生成的代理
这是我的.runsettings
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<!-- Configurations that affect the Test Framework -->
<RunConfiguration>
</RunConfiguration>
<!-- Configurations for data collectors -->
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Configuration>
<CodeCoverage>
<ModulePaths>
<Exclude>
<ModulePath>.*MyModule.*</ModulePath>
</Exclude>
</ModulePaths>
<!-- We recommend you do not change the following values: -->
<UseVerifiableInstrumentation>True</UseVerifiableInstrumentation>
<AllowLowIntegrityProcesses>True</AllowLowIntegrityProcesses>
<CollectFromChildProcesses>True</CollectFromChildProcesses>
<CollectAspDotNet>False</CollectAspDotNet>
</CodeCoverage>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
<!-- Parameters used by tests at runtime -->
<TestRunParameters>
</TestRunParameters>
<!-- Adapter Specific sections -->
<!-- MSTest adapter -->
<MSTest>
<MapInconclusiveToFailed>false</MapInconclusiveToFailed>
<CaptureTraceOutput>true</CaptureTraceOutput>
</MSTest>
</RunSettings>
*MyModule*
真的
最后,我们在一个单独的测试步骤上运行了有问题的测试。老实说,日志提供的信息不是很好,必须创建一个单独的代理队列来启用fusion日志似乎有点过火。最后,我们在一个单独的测试步骤上运行了有问题的测试。老实说,日志提供的信息不是很好,必须创建一个单独的代理队列来启用fusion log似乎有点过分。如果运行并行集,测试将利用机器的可用内核并行运行。如果在runsettings文件中指定,这将覆盖MaxCpuCount我知道有一个AssemblyResolution参数,但每次执行时位置都会不同,因为它取决于提取生成的代理。
在多个代理中运行测试时可能会有一些冲突,这导致了您问题中的错误。最后,我们在单独的测试中运行了有问题的测试。老实说,日志提供的信息不是很好,必须创建一个单独的代理队列来启用fusion log似乎有些过分。如果运行并行集,测试将利用机器的可用内核并行运行。如果在runsettings文件中指定,这将覆盖MaxCpuCount我知道有一个AssemblyResolution参数,但每次执行时位置都会不同,因为它取决于提取生成的代理。
在多个代理中运行测试时可能会有一些冲突,这导致了您问题中的错误。最后,我们在单独的测试中运行了有问题的测试。老实说,日志提供的信息不是很好,必须创建一个单独的代理队列来启用fusion日志似乎有点过火。