title: What does "Method ...ClassInitialize has wrong signature ..." mean?
body: <p>In my Visual Studio 2012 solution I have a C# project for unit testing C++/CLI code, e.g.</p>
  
  <pre><code>...
  using System.IO;
  using Stuff;
  
  namespace MyCLIClassTest
  {
      [TestClass]
      public class MyCLIClassTest
      {
          public MyCLIClassTest() {}
  
          [ClassInitialize]
          public static void Setup(TestContext testContext) 
          {
          }
  
          [TestMethod]
          public void LibraryAccessTest()
          {
              ...
          }
      }
  }
  </code></pre>
  
  <p>Now, the C# tests all fail with a message like "Method MyCLIClassTest.MyCLIClassTest.ClassInitialize has wrong signature. The method must be static, public, does not return a value and should take a single parameter of type TestContext."</p>
  
  <p>After removing the ClassInitializer I got "Unable to set TestContext property for the class MyCLIClassTest.MyCLIClassTest. Error: System.ArgumentException: Object of type 'Microsoft.VisualStudio.TestPlatform.MSTestFramework.TestContextImplementation' cannot be converted to type 'Microsoft.VisualStudio.TestTools.UnitTesting.TestContext'..</p>