gpt4 book ai didi

c# - 如何确保在 NUnit 单元测试期间不访问文件系统和数据库?

转载 作者:搜寻专家 更新时间:2023-10-30 19:53:28 24 4
gpt4 key购买 nike

我正在寻找一种方法来使单元测试在使用 NUnit 和 C# 访问文件系统或数据库时失败。我希望能够在单元测试基类中设置一些东西,以防止所有子测试类访问文件系统。

我目前需要禁用数据库服务,运行单元测试,并检查哪些单元测试失败,以便找到任何正在访问不应该访问的资源的测试。我想找到一种方法来自动执行此过程,以便这些测试在编写后立即失败。

最佳答案

您可以针对特定场景(例如,无法访问文件系统)测试系统功能的一种方法是抽象化您访问文件系统的代码部分,然后将它们“插入”到它们所在的类中通过依赖注入(inject)重新使用。通过这样做,您可以在模拟文件访问对象抛出特定错误和/或模拟成功场景的地方进行测试。后续帖子有一些您可能会发现有用的依赖注入(inject)链接

Dependency Injection in .NET

您可能还想了解编写代码的 SOLID 原则。

关于c# - 如何确保在 NUnit 单元测试期间不访问文件系统和数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16508494/

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