我有一個Customer類,它連接到db並將數據保存到mysql。我使用tomcat7和mysql。我想測試這個類。我有這種方法:與db連接的Java測試類
public CustomerData findById(int customerId) throws SQLException {
Connection conn = null;
PreparedStatement stmt = null;
CustomerData customer = null;
try {
String sql = "SELECT id, status, username, email, age, country, city, is_hidden FROM "
+ TABLE + " WHERE id = ?";
conn = DBManager.getConnection();
stmt = conn.prepareStatement(sql);
stmt.setInt(1, customerId);
ResultSet rs = stmt.executeQuery();
if (rs.next()) {
customer = new CustomerData(rs.getInt(1), rs.getInt(2),
rs.getString(3), null, rs.getString(4), rs.getInt(5),
String.valueOf(rs.getInt(6)), String.valueOf(rs
.getInt(7)), 0, rs.getInt(8));
}
return customer;
} finally {
closeConnection(conn, stmt);
}
}
我該如何測試它?
你想測試什麼?那裏幾乎沒有任何邏輯。 – Thilo
我想測試sql語法並返回數據 –
如果你想測試連接,你應該測試DBManager。如果你想測試CustomerData.findById,並且你想編寫一個單元測試,你應該使用模擬對象。 – erimerturk