powermockito测试私有方法_自动化单元测试生成中的私有API访问和功能模拟

4fe189c9b9aead476eb8ece73ddc1529.png

引用:Andrea Arcuri, Gordon Fraser, and René Just.2017. Private API Access and Functional Mocking in Automated Unit Test Generation. In Proceedings of the International Conference on Software Testing, Verification and Validation (ICST), March 13-17 2017, pp. 126-137.

摘要:

在测试过程中,并非所有面向对象的代码都可以被简单的方法测试到。代码依赖对象可能很难甚至无法实例化,面向对象的封装会使得简单代码变得难以测试。当发生这种情况时,开发人员可以使用模拟复杂依赖关系的模拟对象,或者使用Java反射绕过面向对象的封装,直接访问私有API。在本文中,我们通过扩展EvoSuite单元测试生成工具以及直接访问私有API的能力来研究这个问题,并使用流行的Mockito框架创建模拟对象。但需要注意的是,这不会影响生成测试的有用性:如果重命名字段,即使该重命名是保留语义的重构的一部分,访问私有字段的测试也可能会失败。这样的失败不会揭示真正的回归错误,但这却是误报并且会浪费开发人员审查和修复测试的时间。我们对SF110和Defects4J基准测试的实验证实,在代码覆盖率和错误发

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值