0 0

私有的内部类如何进行单元测试 ,使用mock 10

public class test
{

    public int aa()
    {
        ......
        return 0;
    }

    // 私有内部类
    private class innerClazz
    {
        public int bb()
        {
            ......
            return 1;
        }
    }

}


需要对innerClazz进行单元测试,求大神知道


2012年11月14日 17:39

2个答案 按时间排序 按投票排序

0 0

只能通过反射了,私有的真没好法;

可以考虑做成包级别的  这样测试用例与它同一个包 就好测试了

2012年11月19日 12:21
0 0

test test = new test();
test.innerClazz inner = test.new innerClazz();

先创建外部类test的对象test,再通过外部类对象的test.new  创建出内部类的对象inner,  然后你就可以用内部类对象inner去调用你内部类的方法做单元测试了

2012年11月16日 10:23

相关推荐

    转:google mock C++单元测试框架-奋飞的菜鸟-ChinaUnix博客1

    7. **Mock protected、private 方法**:Google Mock 提供了工具可以模拟类的保护(protected)和私有(private)成员函数,这在测试需要内部行为时非常有用。 Google Mock 的使用通常包含以下步骤: - 引入必要的库...

    PowerMock是一个Java框架能够允许你单元测试通常被视为不可测试的代码

    这在测试内部逻辑或处理复杂依赖关系的私有方法时非常有用。 final方法和类在设计时往往是为了防止被继承或重写,这在一定程度上增加了代码的稳定性。然而,在某些情况下,我们可能需要在测试中改变它们的行为。...

    此资源包含4种mock源码

    PowerMock是在其他模拟框架基础上的扩展,它可以模拟那些通常无法模拟的对象,如静态方法、final类、私有方法和构造函数。PowerMock通过字节码操作实现了这一点,使得开发者能够测试更复杂的场景。`powermock-...

    powermock:单体测试mock工具

    3.包括实例有普通Mock,Mock方法内部new出来的对象,Mock普通对象的final方法,Mock普通类的静态方法,Mock 私有方法 版本库地址 HTTPS协议: https://github.com/ichunming/powermock.git SSH协议: git@github....

    mockito-package-private-class:Mockito 无法在扩展包私有类的公共类上创建模拟..

    在进行测试时,还可以考虑使用其他工具,如PowerMock,它扩展了Mockito的功能,能够模拟静态方法、构造函数、final类和方法,以及私有和包私有类。不过,使用PowerMock应当谨慎,因为过度依赖这类工具可能导致测试...

    BlackBox-WhiteBox:使用JUnit框架进行黑白框单元测试

    本文将深入探讨如何使用JUnit框架来进行黑盒(BlackBox)和白盒(WhiteBox)单元测试,尤其针对Java编程语言。 首先,我们需要理解黑盒测试和白盒测试的概念: 1. **黑盒测试**:这是一种不考虑内部结构或实现细节...

    汪文君powermock实战教学

    【PowerMock实战教学】是由汪文君主讲的一系列教程,专注于讲解如何使用PowerMock这一强大的Java单元测试框架。PowerMock是在easymock和mockito的基础上构建的,旨在提供更多的功能,解决传统mock框架无法处理的一些...

    @Unit注解处理实现代码

    此外,它可以用于测试私有方法,或者在无法直接访问的内部类上进行测试。 6. **集成到项目**:将下载的`@Unit`实现代码加入到项目中,可能需要将其编译为JAR文件,然后将JAR添加到项目的类路径中。在IDE如IntelliJ ...

    powerMock的测试样例集合

    PowerMock是一个强大的Java单元测试框架,它扩展了其他如EasyMock等工具的功能,允许开发者对静态方法、构造函数、final类和方法、私有方法以及删除静态初始化器进行模拟和测试。在“powerMock的测试样例集合”中,...

    jmockit总结

    JMockit 是一款 Java 语言的测试框架,主要用于模拟(mocking)和验证对象的行为,以便在单元测试中隔离被测试代码。它支持行为和状态的测试,这使得测试更加灵活和全面。以下是对 JMockit 的关键知识点的详细解释:...

    PowerMock.zip

    PowerMock 是一个强大的Java单元测试框架的扩展,它允许开发者模拟静态方法、构造函数、final 类、enum 和私有方法,这些都是传统单元测试工具如JUnit和EasyMock无法处理的。这个压缩包“PowerMock.zip”可能包含...

    Jmockit用法示例

    静态方法的模拟是单元测试中的一个挑战,因为它们是类级别的,而不是对象级别的。Jmockit通过`@Mocked`或`@NonStrict`注解可以轻松处理: ```java @Test public void testWithMockedStaticMethod(@Mocked Static...

    powermock-easymock-junit-1.6.1.zip

    同样,它也可以模拟私有方法的调用,这样我们就可以单独测试类的内部逻辑,而无需关心外部接口。 至于JUnit,它是Java编程语言中最常用的单元测试框架。它提供了一套简单的API来编写和运行测试用例,帮助开发者确保...

    powermock-mockito-junit-1.6.3.zip 当前最新版

    这些工具在Java开发中被广泛用于单元测试和模拟,尤其对于处理静态方法、构造器、final类和方法、私有方法等无法直接进行测试的情况。 PowerMock 是一个扩展了其他Mock框架(如Mockito)的库,它允许开发者模拟那些...

    PowerMock学习指南

    然而,有些复杂的代码结构,如静态方法、final类或方法、构造器私有化等,使得传统的单元测试框架如JUnit和Mockito无法进行有效测试。这时,PowerMock就显得尤为必要。PowerMock是一个扩展了其他模拟库(如EasyMock...

    Parody:一种可以用来模仿类和对象以及提供工作结果支持方法调用的php类库

    在测试中,有时我们需要检查或修改对象的内部状态,Parody 可以帮助我们做到这一点,而不必直接访问私有或受保护的属性,保持了封装性。 在使用 Parody 时,可以通过实例化 `Parody` 类并调用其提供的方法来创建和...

    objenesis-3.2.zip

    例如,使用Mockito进行单元测试时,Objenesis可以帮助创建mock对象。在元编程场景中,如使用ASM、ByteBuddy等字节码库生成类时,Objenesis可以帮助快速实例化这些动态生成的类。 总的来说,Objenesis是一个强大的...

Global site tag (gtag.js) - Google Analytics