我在TestBase类中添加了这些方法:
[ClassInitialize]
public static void InitializBeforeAllTests()
{
}
但是当我在Debug中运行一个单元测试Test1():
[TestClass]
public class TestMapping : TestBase
{
    [TestMethod]
    public void Test1()
    {
    }
TestBase.InitializBeforeAllTests()永远不会调用该方法.为什么?
在VS2012.3 .NET4.5和R#中使用MSTEST作为测试运行器.
下面的代码按1,2,3,4的顺序工作.
但是我担心它可能不会总是按此顺序执行,因为MSDNTestInitialize不支持多个属性
问题:是否允许这样做,并且文档是否意味着TestInitialize同一个类中不允许多个属性?
我想保留这个结构,因为许多集成测试继承了TransactedTestBase,但需要设置不同的SQL脚本.
[TestClass]
public class DelegationTest : TransactedTestBase
{
    [TestInitialize]
    public void Setup()
    {
        Console.WriteLine("2 Setup");
        //var script = "INSERT INTO blah...";
        //var sqlConnect = new SqlConnection(dbConnection.ConnectionString);
        //sqlConnect.Open();
        //var server = new Server(sqlConnect);
        //var database = server.Databases[sqlConnect.Database];
        //database.ExecuteNonQuery(script);
    }
    [TestMethod]
    public void TestMethod1()
    {
        Console.WriteLine("3 Test Method");
    }
}
[TestClass]
public class TransactedTestBase
{
    //protected userEntities userEntities;
    //private TransactionScope scope;
    //public static SqlDatabase dbConnection;
    //private const …