测试代码中的数据访问部分相当简单。难以测试的是所有与数据交互的方法。例如,想象一下发布过程,需要大量数据访问来确定要发布的内容,调整数字等等。此过程中存在许多中间步骤(需要进行测试),以及在之后还需要测试以确保发布成功。其中一些步骤实际上可能是存储过程。
过去,我尝试将测试数据插入测试数据库中,然后运行测试,但老实说,编写这种代码非常痛苦(容易出错)。我也尝试过预先构建测试数据库并回滚更改。那样做还行,但在许多场合下这也不是很容易(许多人会认为这是集成测试;无论如何,我仍然需要以某种方式进行测试)。
如果答案是没有什么好的处理方式,现在只能这样,那也很有用。
欢迎提出任何想法、建议或技巧。