2013-05-22 30 views
0

我有一個Jpanel,其中包含一個JTabel和JTextField,用於在單擊該行兩次時顯示Jtable行的值。用戶可以編輯JTextField的值,而不是點擊按鈕來更新,一旦按鈕被點擊,updateUser方法將被調用。我正在嘗試編寫一個JUnit測試來測試updateUser是否正在更新用戶。 如何執行雙擊特定的表格行以獲取指定的JTextField中顯示的數據?使用鼠標單擊事件進行Junit測試

public void updateUser(){ 

     String id= txtid.getText(); 
     String name =txtName.getText(); 
     String q = "UPDATE `user` SET `name`=? WHERE `id`=?"; 
     try{ 
      PreparedStatement ps = Login.con.prepareStatement(q); 
      ps.setString(2, id); 
      ps.setString(1, name); 
      ps.executeUpdate(); 
      JOptionPane.showConfirmDialog(null, "User Updated"); 
      }catch(Exception eu){ 

         } 
} 

回答

1

單元測試應該測試單元,specefically邏輯單元,你的情況我會在updateUser()方法更改爲:

bool updateUser(String id, String name)

你可以測試然後從GUI元素undependant。 然後可以根據updateUser方法的返回值顯示showConfirmDialog