2017-05-24 12 views
2

私はテストにMsTest V2 framewrokを使用しています。 私はテストオートメーションフレームワーク(TAF)プロジェクトを持っていて、テストをしています。 プロジェクトはTAFから継承され、テストのみを含みます。 TAFでは、すべてのテストの前に実行する必要のあるメソッドを含むクラスがありますが、それはまったく動作しません。ところで、BeforeTestメソッドは正常に動作します。AssemblyInitializeメソッドはテストの前に実行されません

public class TestBase 
{ 
    [AssemblyInitialize] 
    public static void BeforeClass(TestContext tc) 
    { 
     Console.WriteLine("Before all tests"); 
    } 
    [TestInitialize] 
    public void BeforeTest() 
    { 
     Console.WriteLine("Before each test"); 
    } 
} 


[TestClass] 
public class FirstTest : TestBase 
{ 
    [TestMethod] 
    public void FailedTest() 
    { 
     Assert.IsTrue(false,"ASDASDASD"); 
    } 
} 

"AssemblyInitialize"メソッドをテストプロジェクトに配置すると、それは機能します。

私は間違っていますか?

答えて

1

はちょうどあなたのTestBase[TestClass]を置く:

[TestClass] 
public class TestBase 
{ 
    [AssemblyInitialize] 
    public static void BeforeClass(TestContext tc) 
    { 
     Console.Writeline("Before all tests"); 
    } 

    [TestInitialize] 
    public void BeforeTest() 
    { 
      Console.Writeline("Before each test"); 
    } 
} 
+0

をTestBaseクラスとFirstTestクラスが異なるアセンブリを持っているので、それが仕事をdoesnの。 – TheX

+0

私は答えを見つけたと思います。 MsTest framewrok https://github.com/Microsoft/testfx/issues/143に問題があります – TheX

関連する問題