在MBUnit中,我可以用一个Factory和多个getter来注释我的Test类,返回一个oracle/sql/mysql连接字符串,测试类中的每个测试方法都可以获得该字符串。
如何使用Visual Studio 2010的单元测试项目做到这一点?
例如,我不允许从TestContext继承并将该对象传递给我的ClassInit方法?
[ClassInitialize()]
public static void MyClassInitialize(MyContextDerivedFromTextContext testContext)
{
}
我不想用这样一个属性对我的TestMethods进行硬编码注释:
[DataSource("System.Data.SqlClient", "Data Source=.\SQLEXPRESS;Initial Catalog=STM;Integrated Security=True;Pooling=False", "CustomerTable", DataAccessMethod.Sequential), TestMethod]
public void TestMethod1()
{
//
// TODO: Add test logic here
//
}
我想要这个:
public void TestMethod1(String testconnectionStringOracleORMySQLORMSSQLetc...)
{
//
// TODO: Add test logic here
//
}
我想你会失望的。MSTest支持数据驱动的测试,正如您已经展示的那样,但与其他测试框架相比,它很糟糕。
我能想到的唯一方法是将连接字符串存储在一个XML文件中,并将其作为MSTest测试的数据源来设置连接,然后执行您需要执行的任何其他操作。