gpt4 book ai didi

c# - 摆脱单元测试对 StreamReader/FileStream 的依赖的好方法是什么?

转载 作者:可可西里 更新时间:2023-11-01 08:41:39 26 4
gpt4 key购买 nike

场景如下:

我有一个方法可以通过 .NET 中的 FileStream 和 StreamReader 读取文件。我想对这个方法进行单元测试,并以某种方式删除对 StreamReader 对象的依赖。

理想情况下,我希望能够提供我自己的测试数据字符串,而不是使用真实文件。现在,该方法始终使用 StreamReader.ReadLine 方法。修改我现在的设计以使该测试成为可能的方法是什么?

最佳答案

取而代之的是 StreamTextReader。然后您的单元测试可以使用 MemoryStreamStringReader。 (或者如有必要,从测试程序集中加载资源。)

注意如何 ReadLine最初由 TextReader 声明,不是 StreamReader

关于c# - 摆脱单元测试对 StreamReader/FileStream 的依赖的好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4974618/

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