我有一个包含JTabel和JTextField的Jpanel,它在单击两次行时显示Jtable行的值。用户可以编辑JTextField值,而不是单击按钮更新按钮单击后将调用updateUser方法。我正在尝试编写一个JUnit测试来测试updateUser是否正在更新用户。 如何双击特定的表行以获取指定的JTextField中的数据?
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){
}
}
答案 0 :(得分:1)
Unittest应该测试单位,特别是逻辑单位,在你的情况下我会将updateUser()
方法更改为:
bool updateUser(String id, String name)
你可以测试然后从GUI元素中取消。
然后可以根据updateUser方法的返回值显示showConfirmDialog
。