11
是否存在與MSTest的[ClassCleanup] & [ClassInitialize]的非靜態等價物?MSTest的[ClassCleanup]和[ClassInitialize]是否存在非靜態等價物?
我正在使用MSTest進行一些系統/集成級別測試,我不想擔心在測試中初始化連接。
示例代碼:
[TestClass]
public class DefectCreatorTest
{
private long _cookie;
private soapcgi _soap;
[ClassInitialize]
public void Initialize()
{
_soap = new soapcgi {Url = "http://localhost:80/scripts/soapcgi.exe"};
_cookie = Transaction.Login(_soap);
}
[ClassCleanup]
public void TearDown()
{
Transaction.Logout(_cookie, _soap);
}
[TestMethod]
public void CreateDefectTest()
{
var result = _soap.Foo();
Assert.AreEqual("bar", result);
}
}
你是什麼意思的非靜態?你的示例代碼有什麼問題? – seldary
示例代碼編譯,但不會運行。用ClassInitialize裝飾的方法需要是一個靜態方法。 –
測試不會運行,因爲Initialize方法需要將TestContext傳遞到設置方法中,即使它未被使用。 –