首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >First time Moqer,Verify()语法?

First time Moqer,Verify()语法?
EN

Stack Overflow用户
提问于 2011-08-10 08:32:40
回答 1查看 108关注 0票数 1

我从这里抓取了一些代码:http://web.archive.org/web/20090407010431/http://code.jesschadwick.com/Snippets/TestDatabase.cs

对于我来说,这似乎是针对实际数据库设置测试的理想场景。

我刚接触单元测试、模拟等,到目前为止,我还不了解Initialize_executes_schema_if_provided测试失败的原因。

我已经尝试了几种代码变体,在尝试初始化之前和之后都将Expect()切换到Setup()Verify(),但没有尝试初始化。

ExecuteQuery方法是虚拟的,所以在我看来,它应该是有效的--我不明白为什么它不能验证它是否被调用。

任何指点都会很有帮助。

谢谢大家。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-13 19:09:21

因为Initialize方法是虚拟的,所以Moq用它自己的方法实现(在本例中什么也不做)覆盖它。当调用db.Initialize()时,会调用Moq的实现,而不是被测试的类,这意味着对ExecuteQuery的调用永远不会发生,这也是测试失败的原因。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7004650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档