5
我是using Microsoft.VisualStudio.TestTools.UnitTesting;
但我标记为[TestInitialize]的方法在测试之前未被调用。我从来没有使用过这个特定的测试框架,但在其他所有框架中,总是有一种注册Setup和TearDown方法的方法,它可以在每次测试之前和之后自动运行。这与视觉工作室测试工具单元测试框架不一样吗?为什么TestInitialize不会自动调用?
[TestClass]
public class RepoTest
{
private const string TestConnectionString = @"Server=localhost\SQL2014EXPRESS64; Database=RepoTest; Trusted_Connection=True;";
private const string MasterConnectionString = @"Server=localhost\SQL2014EXPRESS64; Database=master; Trusted_Connection=True;";
[TestInitialize]
private void Initialize()
{
using(var connection = new SqlConnection(MasterConnectionString))
using(var command = new SqlCommand(Resources.Initialize, connection))
{
command.ExecuteNonQuery();
}
}
[TestCleanup]
private void Cleanup()
{
using (var connection = new SqlConnection(MasterConnectionString))
using (var command = new SqlCommand(Resources.Cleanup, connection))
{
command.ExecuteNonQuery();
}
}
[TestMethod]
public void CreateARepo()
{
var repo = new Repo(TestConnectionString);
}
}
可能需要公开。 –