如何在 Visual Studio 中调试类库
Posted
技术标签:
【中文标题】如何在 Visual Studio 中调试类库【英文标题】:How to debug a class library in Visual Studio 【发布时间】:2011-01-02 22:01:08 【问题描述】:我正在开发 Visual Studio 2008 中的类库 (DLL) 项目;用 C# 编程。为了测试我的 DLL,我刚刚创建了第二个项目,它是一个控制台应用程序,在该项目中我可以引用第一个项目并运行测试。有没有更简单的方法来做到这一点?我可以在我的类库项目中创建另一个包含测试的文件,然后以某种方式告诉 Visual Studio 运行该文件吗?
我知道一种方法是将文本文件添加到我的项目中,然后在 JScript 中编写我的测试代码。然后在调试菜单上的项目设置中,我可以告诉它启动外部程序(JScript)。然后,我的测试文件的名称test.js
进入命令行参数框。但是,我想知道是否有办法使用 C# 代码而不是 JScript 来做到这一点?
【问题讨论】:
【参考方案1】:您可以在当前解决方案中添加一个测试项目,然后将该项目设置为启动项目。然后,在您的类库项目上按 F5 将启动您的测试项目。
【讨论】:
【参考方案2】:看看 NUnit 或其他类似的单元测试框架。
Visual Studio 的“Team Developer”和“Team Suite”风格已经内置了 Microsoft 的单元测试框架。
【讨论】:
+1 此外,如果您养成了进行测试驱动开发的习惯,您可能会发现您需要进行的调试会大大减少。 对 Joe 的回答的补充,此链接有望为您指明正确的方向,因为它将向您展示如何使用 NUnit 创建和运行测试。 en.csharp-online.net/…【参考方案3】:通过在库中的类/方法中右键单击“创建单元测试”为类库创建单元测试项目。我建议下载TestDriven.NET 并在其中使用右键单击测试运行器。
【讨论】:
【参考方案4】:您是在谈论单元测试吗?您可以使用 nUnit 之类的东西或 Visual Studio 附带的内置测试框架。最简单的测试只需要您向测试夹具添加一些属性并做出类似 obj1 == obj2 的断言。
查看测试驱动开发 (TDD)、领域驱动开发 (DDD) 或行为驱动开发 (BDD) 之类的内容可能会有所帮助。我自己喜欢将 nUnit 与 nBehave 一起使用。
【讨论】:
以上是关于如何在 Visual Studio 中调试类库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 .NET Core 类库中引用 Visual Studio 共享项目
Visual Studio 中类库的 Application Insights