c# – 你如何对一个与数据交谈的类进行单元测试?

前端之家收集整理的这篇文章主要介绍了c# – 你如何对一个与数据交谈的类进行单元测试?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些存储库类,用于与IRepository接口派生的不同类型的数据进行通信.

在实现中,代码与数据源对话,这是XML文件数据库的目录,甚至只是缓存.是否有可能对这些实现进行可靠的单元测试?我没有看到模拟实现工作,因为那时我只测试模拟代码而不是实际代码.

解决方法

不,当你编写一个使用IRepository的类时,你会使用mock.对于IRepository的实现,您需要针对相应的数据源进行测试.对于数据库来说,这有点痛苦 – 对于文件系统来说,稍微不那么容易.

在可能的情况下,如果您可以根据流或读者来表达您的实现,您将使您的生活更轻松:对实现的这些部分的测试可能违反内存中的数据源,或来自测试程序集中的资源的流.当然,您可能需要进行一些真实数据库文件系统的测试,但希望更少.

无论你是否称这种测试“单元”测试都是你如何定义单元测试的问题;我个人对所涉及的名字并不太在意,但我确实关心进行测试.特别是对于数据库而言,这些可能会有些痛苦(特别是如果您希望能够并行运行测试) – 但根据我的经验,它们也可能非常有价值.

猜你在找的C#相关文章