gpt4 book ai didi

java - 如何用JUnit通过测试用例测试一个方法是否在另一个方法中执行?

转载 作者:行者123 更新时间:2023-12-02 04:55:42 26 4
gpt4 key购买 nike

我的骰子游戏有一个方法 rollAllDice() ,当玩家掷完所有骰子时会调用该方法。这反过来将调用clearAllDiceSelections()方法来取消选择所有骰子的先前选择。现在我需要编写测试用例来判断骰子是否被取消选择?

public void rollAllDice() {
clearAllDiceSelections();
for (Die d: f_dice) {
d.roll();
}
}

private void clearAllDiceSelections() {
for (Die d: f_dice) {
d.setSelected(false);
}
}

public void roll() {
f_faceValue = f_randgen.nextInt(f_sides) + 1;
}

最佳答案

一般来说,你不应该测试你的私有(private)方法,看看Should I test private methods or only public ones? 。涵盖您的公共(public)方法案例就足够了。测试私有(private)方法会破坏封装。

如果您认为必须测试私有(private)方法,那么您的代码设计就有问题。您应该重新考虑您的代码实现。

关于java - 如何用JUnit通过测试用例测试一个方法是否在另一个方法中执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28794495/

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