0

基本上我正在使用 MStest 运行一组编码的 ui 测试。

我正在尝试在测试运行时编写自定义日志文件。

例如,在每次测试结束时,如果测试已通过,我想在文本文件中添加一行,显示“测试已通过”

这最好输出到 TXT 文件。通过扩展,我最终会将其输出到电子邮件中,但现在不需要。

在每个测试结束时的基本水平上,我都在尝试这个

 if (this.testContextInstance.CurrentTestOutcome.Equals(true))
        {
            string lines = "Passed.";
            System.IO.StreamWriter file = new System.IO.StreamWriter("c:\test.txt");
            file.WriteLine(lines);
            file.Close();
        }
        else
        {
            string lines = "Failed.";
            System.IO.StreamWriter file = new System.IO.StreamWriter("c:\test.txt");
            file.WriteLine(lines);
            file.Close();
        }
    }

但我并不完全理解 CurrentTestOutcome 方法。

目前我根本没有得到任何文件输出。

4

1 回答 1

1

CurrentTestOutcome是一个枚举,请参阅http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.testcontext.currenttestoutcome.aspxhttp://msdn.microsoft.com/en-us/library/ microsoft.visualstudio.testtools.unittesting.unittestoutcome.aspx。所以我不确定this.testContextInstance.CurrentTestOutcome.Equals(true)问题的结果是什么。

类似以下内容应该显示您想要的内容:

string lines = "Failed.";
System.IO.StreamWriter file = new System.IO.StreamWriter("c:\test.txt");
file.WriteLine(this.testContextInstance.CurrentTestOutcome.ToString());
file.Close();
于 2013-09-26T20:27:51.750 回答