无法使用假货调试单元测试用例

时间:2015-10-06 07:12:36

标签: c# unit-testing visual-studio-2013 microsoft-fakes

我在

中使用单元测试项目和MS Fakes模拟框架

Visual Studio Premium 2013 Update 4

。当我在visual studio中运行测试时它工作正常,但是当我尝试调试单元测试用例时,它失败并出现以下错误:

  

Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationException:   无法从COR_PROFILER_PATH和。解析探查器路径   COR_PROFILER环境变量。

我尝试过以下方法:

  1. 特定版本为false [Not working]
  2. 删除所有假货,清理,构建和读取[Not working]
  3. 添加了系统和mscorlib假货[Not working]
  4. 编辑:

    [TestMethod]
    public void LoginResponseTest()
    {
        using (ShimsContext.Create())//Getting error here in case of debug test
        {
    
          var stub = new StubISimpleHttpService();
          stub.SendPostRequestStringParameterCollection = GetLoginResponse;
          MyAPIConnector connector = new MyAPIConnector();
          uint response = connector.login("test_username", "test_password");
    
          Assert.IsTrue(response == 0);                
        }    
    }
    

    任何解决方案?

1 个答案:

答案 0 :(得分:-1)

我添加了接口,我需要存根到假货设置中。例如:

<StubGeneration>
  <Clear/>
  <Add Interfaces="true" FullName="ISimpleHttpService"/>
</StubGeneration>
<ShimGeneration>
  <Clear/>
  <Add FullName="HttpResponse"/>
</ShimGeneration>

<强>说明: 我们只需要添加单位测试假货所使用的假货dll。我们需要将StubGeneration标签添加到xml文件中。这些标记取决于单元测试用例使用的类。