【发布时间】:2019-01-11 14:21:31
【问题描述】:
我在尝试为我的一个应用程序类运行单元测试时遇到了这个奇怪的问题:“包不存在”。
如果我运行应用程序,我会遇到同样的错误,但如果我再次按“运行”,它会编译并正常工作,我还对另一个类进行了另一个单元测试,并且重复相同的过程,我第一次运行它,得到错误,再次运行它并编译。但是由于某种原因,当我特别运行这个新的单元测试时,我得到了同样的错误并且没有编译。
这是产生错误的特定代码:
package chess_game;
import org.junit.Test;
import pieces.*;
import static org.junit.Assert.*;
public class GameTest {
@Test
public void enPassantLegalMoves(){
...
Piece bking = new King(PieceColour.BLACK);
bd[3][2].setPiece(bking);
Piece bpawn = new Pawn(PieceColour.BLACK);
bpawn.setHasMovedAlready(true);
bd[4][4].setPiece(bpawn);
Piece wking = new King(PieceColour.WHITE);
bd[7][4].setPiece(wking);
Piece wpawn = new Pawn(PieceColour.WHITE);
wpawn.setHasMovedAlready(true);
bd[4][3].setPiece(wpawn);
...
}
}
注意:我不知道它是否相关,但我使用的是 android studio,除了编译错误之外,IDE 没有给出任何警告。
提前致谢。
【问题讨论】:
-
你使用哪个 JUnit
-
检查这个文档这可以帮助你developer.android.com/training/testing
-
@crammeur 我正在使用 JUnit4。我不知道这是否重要,但特别是在这个测试中,我只测试“普通 java”,与 android 无关。
-
我看到你的包结构,我认为这是导致问题的原因,因为他们无法访问其他包。
标签: java unit-testing android-studio import packages