Java 需要JUnit测试帮助重新配置逻辑
我正试图为下面的代码制定一个JUnit测试,我希望有人能为我指明正确的方向,因为我完全被难住了Java 需要JUnit测试帮助重新配置逻辑,java,testing,junit,Java,Testing,Junit,我正试图为下面的代码制定一个JUnit测试,我希望有人能为我指明正确的方向,因为我完全被难住了 public ArrayList<PathData> tileClicked(Coordinate tile){ ArrayList<PathData> pathData = new ArrayList<>(); Tile clickedTile = gameBoard.getTile(tile); int totalNumPlayers =
public ArrayList<PathData> tileClicked(Coordinate tile){
ArrayList<PathData> pathData = new ArrayList<>();
Tile clickedTile = gameBoard.getTile(tile);
int totalNumPlayers = clickedTile.getNumberOfPlayers();
Player cur;
//GuiInstruction guiInstruction = new GuiInstruction();
//guiInstruction
if (clickedTile.hasPort()){
//deal with ports
for(int j = 0; j < totalNumPlayers; j++){
cur = clickedTile.getPlayerIndex(j);
if(cur.equals(currentPlayer)){
pathData = specialCalculateMove(currentPlayer, true);
}
}
} else if (clickedTile.hasPlayer()){
for(int i = 0; i < totalNumPlayers; i++){
cur = clickedTile.getPlayerIndex(i);
if(cur.equals(currentPlayer)){ //TODO: Is this if statement stupid?
pathData = normalCalculateMove(currentPlayer);
}
}
}else{
//TODO: Does this actually do anything?
}
return pathData;
}
这是一个相当宽泛的问题,因此您只能得到一些宽泛的提示,不打算为您编写代码!: 你必须了解A方法B的参数是什么,结果是什么。您的方法可能具有的可观察效果 从此处开始:提供单个平铺参数;根据对象的实际状态,测试中的方法使用不同的路径
这意味着:对于通过方法的每个可能路径,您希望至少有一个测试方法。该测试方法调用被测试的方法,其参数设计为采用特定路径。您调用被测试的方法;然后检查返回的结果是否符合您的期望。您遇到了什么难题?你的问题太宽泛了。你预计会发生什么?如果传入的平铺引用为null怎么办?该怎么办?我看到太多的TODO注释表明您甚至不了解自己的方法,更不用说测试了。请明确要求您需要声明什么以及需要测试什么功能等等。您需要测试此方法吗?请参阅: