gpt4 book ai didi

c# - 我应该把我的测试代码放在哪里?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:31 27 4
gpt4 key购买 nike

所以我已经编写了一个类并且我有测试它的代码,但是我应该把代码放在哪里呢?我可以为该类创建一个静态方法 Test(),但在生产过程中不需要它,并且会使类声明变得困惑。一些搜索告诉我将测试代码放在一个单独的项目中,但该项目的格式到底是什么?一个静态类,每个类都有一个方法,所以如果我的类称为 Randomizer,该方法将称为 testRandomizer?

关于组织测试代码的一些最佳实践是什么?

编辑:我最初用我认为相关的多种语言标记了这个问题,但似乎这个问题的总体答案可能是“使用测试框架”,这是特定于语言的。 :D

最佳答案

无论您是否使用测试框架(我强烈建议这样做),单元测试的最佳位置是在单独的程序集 (C/C++/C#) 或包 (Java) 中。

您将只能访问公共(public)和 protected 类和方法,但是单元测试通常只测试公共(public) API。

我建议您为每个现有项目/程序集/包添加一个单独的测试项目/程序集/包。

项目的格式取决于测试框架 - 对于 .NET 测试项目,使用 VSs 内置测试项目模板或 NUnit 在你的 VS 版本中不支持单元测试,对于 Java 使用 JUnit,对于 C/C++ 或者 CppUnit(我没试过这个)。

测试项目通常包含一个静态类初始化方法,一个静态类拆卸方法,一个用于所有测试的非静态初始化方法,一个用于所有测试的非静态拆卸方法和一个非静态方法每个测试+任何您添加的其他方法。

静态方法让您复制 dll、设置测试环境和清理测试环境,非静态共享方法用于减少重复代码,实际测试方法用于准备测试特定的输入、预期输出和比较它们。

关于c# - 我应该把我的测试代码放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1618196/

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