gpt4 book ai didi

.net - 使用 TestDriven.Net 时如何查看 Debug.WriteLine 语句?

转载 作者:行者123 更新时间:2023-12-03 03:14:47 25 4
gpt4 key购买 nike

我尝试使用 TestDriven.Net 不仅是为了测试我的代码,而且是在我的代码上调用一个函数,其目的是将代码的内部状态打印到调试窗口。

这是我正在尝试做的一个非常简单的示例..

<TestFixture()> _
Public Class UnitTest

<Test()> _
Public Sub TestDebug()
Dim oClass1 As New Class1

Assert.AreEqual(True, oClass1.IsTrue)

Debug.WriteLine("About to call .PrintDebug()")
oClass1.PrintToDebug()

End Sub

End Class

Public Class Class1

Private _IsTrue As Boolean = True

Public ReadOnly Property IsTrue() As Boolean
Get
Return _IsTrue
End Get
End Property

Public Sub PrintToDebug()
Debug.WriteLine("Internal state of Class1: " & _IsTrue)
End Sub

End Class

我正在尝试测试 Class1 的公共(public)接口(interface),并以某种方式查看 Class1.PrintToDebug() 函数的输出。

我浏览过 TestDriven.Net quickstart ,它显示了在单元测试中使用 Debug.WriteLine 的示例,但奇怪的是这对我来说也不起作用 - 即我的“测试”窗口中唯一的输出是:

------ Test started: Assembly: ClassLibrary1.dll ------


1 passed, 0 failed, 0 skipped, took 1.19 seconds.

我尝试查看其他窗口(调试和构建),调试窗口启用了“程序输出”和“异常消息”选项。

我寻找过选项或偏好,但没有找到!

感谢您的帮助!

<小时/> 编辑:我正在使用 VB.Net 2.0、TestDriven.Net 2.14.2190 和 NUnit 2.4.8.0

最佳答案

我发现虽然 Debug.Writeline() 不适用于单元测试,但 Console.WriteLine() 可以。

原因是当您运行测试时,不会调用调试器进程,并且 Debug.WriteLine() 会被忽略。但是,如果您使用“使用调试器进行测试”,我认为(尚未尝试)Debug.WriteLine() 会起作用。

关于.net - 使用 TestDriven.Net 时如何查看 Debug.WriteLine 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/173641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com