我应该如何使用 C# 和 NUnit 对单元测试进行分组?

发布于 2024-09-30 14:31:36 字数 174 浏览 4 评论 0原文

我有一个包含大量 C# 单元测试的类(使用 NUnit 2.5.8),我想根据我正在测试的类功能的哪个区域将单元测试分组在一起(这样我就可以快速选择哪个单元测试)设置为在 NUnit UI 中运行)。

我知道我可以将类重构为更小的组件,这可以解决问题,但是有没有其他方法可以在不完全重新设计生产代码的情况下做到这一点?

I've a class with a lot of unit tests in C# (using NUnit 2.5.8) and I'd like to group the unit tests together based on which area of the class's functionality I'm testing (so I can quickly choose which set to run in the NUnit UI).

I know I could refactor the class into smaller components, which would solve the problem, but are there any other ways to do this without completely re-designing the production code?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

俏︾媚 2024-10-07 14:31:36

为什么不为您想要测试的每个功能区域使用一个[TestFixture](单独的类)?

class ClassThatDoesTooMuch {
    // functionality related to opening a database connection
    // functionality related to file management
    // functionality related to solving world hunger
}

[TestFixture]
public class ClassThatDoesTooMuchDatabaseConnectionTests { // }

[TestFixture]
public class ClassThatDoesTooMuchFileManagementTests { // }

[TestFixture]
public class ClassThatDoesTooMuchWorldHungerSolutionTests { // }

Why not a [TestFixture] (separate class) for each area of functionality that you want to test?

class ClassThatDoesTooMuch {
    // functionality related to opening a database connection
    // functionality related to file management
    // functionality related to solving world hunger
}

[TestFixture]
public class ClassThatDoesTooMuchDatabaseConnectionTests { // }

[TestFixture]
public class ClassThatDoesTooMuchFileManagementTests { // }

[TestFixture]
public class ClassThatDoesTooMuchWorldHungerSolutionTests { // }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文