gpt4 book ai didi

java - Junit:在没有实例的情况下调用私有(private)方法

转载 作者:太空宇宙 更新时间:2023-11-04 11:54:12 26 4
gpt4 key购买 nike

应用程序中没有编写任何 Junits。但在其他模块中,我们已经开始使用 Jmockit 编写 Junits。因此任何核心 java 或 Jmockit 解决方案都将受到高度赞赏。

我有应用程序初始化类,它是单例的,它通过调用数据库[数据加载]、属性文件等来初始化应用程序。它的对象创建很复杂。

我正在编写新方法来初始化类[方法名称addMoreInitilization]。

我想为上述场景编写Junit。有没有办法为 addMoreInitilization 方法编写 Junit,而不调用复杂的对象创建逻辑,因为它有很多依赖项,并且模拟它们全部是不可行的,而且也不想使方法静态?

下面的ApplicationStartUp类的伪java代码

Class ApplicationStartUp {

private ApplicationStartUp applicationStartUp;
// assume single ton implemented

private ApplicationStartUp () {
// complex object creation
addMoreInitilization();
}

public static getInstance() {
}

// new method
private addMoreInitilization() {
// my logic needs to be tested using junit
}

}

最佳答案

您可以在测试中扩展“ApplicationStartUp”。然后重写不需要的方法。这样就可以创建子类的Object并调用父类(super class)的addMoreInitialization方法。

关于java - Junit:在没有实例的情况下调用私有(private)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41505193/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com