我们有一个构建过程,包括通过mstest.exe启动的unittest。有时一些单元测试卡住,消息框或发送错误对话框卡住或整个过程崩溃。我不知道如何找到哪个测试是坏的。
如果单元测试被卡住,有什么方法可以找到当前运行测试的名称?
有没有办法找到最后一次运行的unittest的名字?
我不想为每次测试设置超时,因为我不确定,什么是合适的超时。
对我来说一个不错的解决方案可能是在完成单元测试时开始记录。我可以找到最后记录的unittest是什么。有办法记录吗?
答案 0 :(得分:1)
您可以使用TestContext.TestName:
/// Use this method to run code before running each test.
[TestInitialize()]
public void TestInitialize()
{
YourLogger.LogFormat("Run test {0}", this.TestContext.TestName);
}
/// Use TestCleanup to run code after each test has run
[TestCleanup()]
public void MyTestCleanup()
{
YourLogger.LogFormat("Test {0} is done", this.TestContext.TestName);
}