title: vsperfcmd.exe calculate code coverage inaccuracy
body: <p>I create a Cpp Project with google test in visual studio 2015. And using the vsperfcmd to calculate the code coverage, but get a lower result, some code line isn't marked as covered.
  Here is my code:</p>
  
  <pre><code> int FooBar::Max(int a, int b)
      {
          if (a &gt; b)
          {
              return a;
          }
          return b;
      }
  </code></pre>
  
  <p>Here is my test case:</p>
  
  <pre><code>class FooBarTest : public testing::Test
  {
  public:
      void testMax1()
      {
          FooBar fooBar;
          ASSERT_EQ(fooBar.Max(10, 5) , 10);  
      }
      void testMax2()
      {
          FooBar fooBar;
          ASSERT_EQ(fooBar.Max(1, 2), 2);
      }
  };
  
  
  TEST_F(FooBarTest, testMax1)
  {
      testMax1();
  }
  
  TEST_F(FooBarTest, testMax2)
  {
      testMax2();
  }
  </code></pre>
  
  <p>This is the code coverage marked by vsperfcmd, the return b code line is not covered, and the code coverage is 75%:
  <a href="https://i.stack.imgur.com/GEhOG.png" rel="nofollow noreferrer">enter image description here</a></p>
  
  <p>Could someone tell me why or how to fixed it.</p>