2017-03-21 9 views
-1

私は自分のJavaプログラムのためにJunitテストを作成しています。初めてハッシュテーブルを使用しています。エントリがハッシュテーブルに追加されているかどうかを確認するためのjunitテストの記述方法は非常にわかりません。誰もがアイデアを持っていますか?JUNITテストを使用して、エントリが追加されたかどうかを確認するにはどうすればよいですか?

//これはこれは、JUnitテストの開始

Permit_list test_permit_list; 

    public void testAddPermit(){ 


    } 
+0

http://www.tutorialspoint.com/junit/ – OldProgrammer

+3

エントリがある場合はどのようにチェックしますか? 1)エントリが存在しないことを確認します。2)エントリを追加します。3)エントリが存在することを確認します。 –

+3

@ ShakeDatBinary誰かが何の努力も払わずに答え全体をあなたに伝えてくれるようにしたいので、それはあまり役に立ちません。 – JamesB

答えて

0

この

String permitKey = "x"; 
assertNull(map.get("key").getId()); 
map.add("key", new Permit(permitKey)); 
assertEquals(permitKey, map.get("key").getId()); 
0

のようなものであるハッシュテーブル

public void add(String ph, Permit p) { 
     PermitInfo.put(ph, p); 
    } 

//にエントリを追加する方法であり、 @BeforeClass注釈付きメソッドのように、yourHashtableを初期化する必要があります。

@Test 
public void testAddPermit() { 
    //here element variable has to be initialized 
    assertFalse(element + "is not in the hashtable.", 
    yourHashtable.contains(element)); 
    //here add the element to the hashtable 
    assertTrue(element + "is in the hashtable.", 
    yourHashtable.contains(element)); 
} 
+0

'assertTrue(!contains)'はやや嫌な感じです - 'assertFalse(contains)'についてどうですか? –

+0

それについての考え(私の最初の考えでした)が、私の心を変えました...しかし、あなたがそれが間違っていると言うなら...。私の答えを編集しました。 –

0

あなたは、その後、パブリックgetメソッドを実装する必要があります。

Permit_list test_permit_list; 

@Test 
public void testAddPermit(){ 
    Permit p = new Permit(); 
    test_permit_list.add("test", p); 
    assertEquals(p, test_permit_list.get("test"); 
} 
+0

アンダースコアの使用は、標準のJava命名規則の一部ではありません。 – JamesB

+0

しかし、どちらも禁止されていません。アンダースコアは、特にユニットテストのネーミング(アノテーションが採用されていない場合)に関して、さまざまな振る舞いを編成するために、内部のネーミングパターンで使用できます。 – scottb

+0

@scottb私はそれが禁じられていないことに同意しますが、私はJavaの単体テストでアンダースコアを使用することはありません。それらの使用法を説明するための具体的な例を提供するための注意が必要ですか? – JamesB

関連する問題