首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powermock和FileUtils包

Powermock和FileUtils包
EN

Stack Overflow用户
提问于 2017-04-11 11:40:39
回答 1查看 954关注 0票数 1

我们能用FileUtils来模拟PowerMock包的静态方法吗?我有一个要求,我的业务代码调用FileUtils包的一个FileUtils(url,file),为了进行单元测试,我必须使用Powermock来模拟它,这会产生未完成的固执异常。

这个链接检测到org.mockito.exceptions.misusing.UnfinishedStubbingException未完成的固执,建议我们不能模拟这些文件实用程序所属的java.lang包的类?我不想为这个类创建包装器。还有别的办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-11 12:16:08

当你仔细阅读这个相关问题时,你会发现:

我不能从java.lang、java.net、java.io或其他系统类中模拟类,为什么?

但是,您打算使用Apache类FileUtil 方法

从这个意义上说:您想要模拟静态的“共用或花园”方法。

如果这不起作用的话:你做错了。所以,简单的回答是:再读一遍他们的文档;检查代码偏离的位置。

但是除此之外:使用静态总是意味着:因为它会导致生产代码的紧密耦合;并且您会失去多态性的优势。这意味着:您在可以使用的模拟框架中受到限制(因为只有PowerMock或JMockit支持静态模拟)。

因此,我真正的答案是:花了这几行代码,并围绕这个静态方法构建了一个包装器;并且摆脱了模拟静态调用的需求。

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

https://stackoverflow.com/questions/43344893

复制
相关文章

相似问题

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