gpt4 book ai didi

java - 更改测试中最终类的返回值

转载 作者:行者123 更新时间:2023-12-02 07:10:40 26 4
gpt4 key购买 nike

有人知道如何更改最终类中方法的返回值吗?

我正在尝试测试 ToBeTested 类,并且希望得到 true 结果。我尝试使用 Powermockito 但没有找到解决方案。

public final class ToBeChanged {

public static boolean changeMyBehaviour() {
return false;
}
}

public class ToBeTested {
public boolean doSomething () {
if (ToBeChanged.changeMyBehaviour)
return false;
else
return true;
}
}

我不想将 ToBeChanged 类声明为 ToBeTested 类中的字段。所以没有办法改变实现的类本身。

最佳答案

使用JMockit工具,测试会是这样的:

@Test
public void doSomething(@Mocked ToBeChanged mock)
{
new NonStrictExpectations() {{ ToBeChanged.changeMyBehaviour(); result = true; }};

boolean res = new ToBeTested().doSomething();

assertTrue(res);
}

关于java - 更改测试中最终类的返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15572004/

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