PokerHandクラスを作成し、JUnitテストを使用してテストしています。何らかの理由で1つのPokerHandオブジェクトを作成したときに1つのテストメソッドでコンストラクタを呼び出すと8回呼び出されます。Javaコンストラクタが複数回呼び出されています
PokerHandコンストラクタ(それが呼び出された回数を確認するためにprint文を追加して、プリントは8回に分け):
//Constructor
public PokerHand (Card cardOne, Card cardTwo, Card cardThree, Card cardFour, Card cardFive) {
System.out.println("creating hand...");
//Initialize value array
value = new int[6];
//Initialize cards list, add cards, and check for duplicates
cards = new ArrayList<Card>();
cards.add(cardOne);
if (cards.contains(cardTwo)) {
throw new DuplicateCardException();
} else cards.add(cardTwo);
if (cards.contains(cardThree)) {
throw new DuplicateCardException();
} else cards.add(cardThree);
if (cards.contains(cardFour)) {
throw new DuplicateCardException();
} else cards.add(cardFour);
if (cards.contains(cardFive)) {
throw new DuplicateCardException();
} else cards.add(cardFive);
determineValueOfHand();
}
テストケース:
@Test
public void testFlush() {
PokerHand a = new PokerHand(D10, DJ, DQ, DK, DA);
}
私が見つめてきました私はJUnitのテストとEclipseの新機能ですから、ちょっとしたことが分からないと思います。すべてのヘルプは大
テストクラスには他に何がありますか?たとえば、 'D10'はここでは宣言されていないので、他のものでなければなりません。 – Brick
あなたのテストを含むクラスの完全なコードを提供できますか? –
@Brick私のテストクラスには、52種類のCardオブジェクトがすべて作成されました – Lanre