任何人都可以帮我模拟MongoDatabase的db.GetCollection以使用Moq返回模拟数据
//returns MongoDatabase instance
var db = mongoConnector.Connect();
//Return Collection on the type Entity being passed
db.GetCollection<Entity>("CollectionName").AsQueryable().ToList();
答案 0 :(得分:0)
单元测试MongoDatabase听起来有点矫枉过正。我强烈建议您为数据访问层进行数据相关的集成测试。使用集成测试测试核心CRUD代码,并在每次测试运行后清理/引导数据库。在拆卸时清理数据库很重要,因为每个测试都应该独立于其他测试。
MOQ可用于测试业务逻辑层,您可以在其中模拟数据访问层并返回预期数据,而不是访问数据库。