我正在尝试为没有接口且大多数功能是私有的旧代码库创建系统测试。应用程序从另一个系统获取数据,将其转换为“更好的格式”并将其保存到缓存中。
我想读取即将写入数据库的值,然后跳过写入步骤。
然而,我找到了一个返回我需要的值的函数。:
public virtual List<string> MyFunction(XmlDocument input)
{
var x = DoSomethingWithInput();
return x;
}
所以我的问题是,是否有任何模拟方法(使用 NSubstitute、Moq 或其他方法)可以让我读取返回值?我主要看到读取输入和替换输出。
我从此函数获得的返回值将与我的预期值进行比较。但是由于在这个函数之前有很多代码我不能只运行这个函数,我需要运行整个应用程序但在这里暂停它。
写入数据库的类只使用静态函数,所以据我所知,不可能模拟它并在那里获取输入。