我正在嘗試用mockito編寫一個用ComboPooledDataSource注入的類來測試一個案例。使用mockito進行接口實現
我得到一個錯誤,說ComboPooledDataSource是一個最終的類,不能被嘲笑。所以,我正在考慮模擬接口(DataSource)並將其用於測試用例,但我不知道如何去做。
private Datasource cpds;
private Connection connection;
@Test
public void test() throws Exception {
connection = getConn();
cpds = mock(DataSource.class);
when(cpds.getConnection()).thenReturn(connection);
accessor = new comboPoolUser(cpds);
accessor.setConnection();
}
方法comboPoolUser調用的getConnection:
public void setConnection() {
try {
connection = comboPooledDataSource.getConnection();
} catch (SQLException e) {
throw new RuntimeException("error",e);
}
}
我 「comboPoolUser」 構造函數接受一個ComboPooledDataSource,但我試圖嘲弄了 「數據源」 的測試,以便我得到一個「無法找到符號:構造函數comboPoolUser(javax.sql.DataSource)」的錯誤。什麼是正確的方法來做到這一點?
您發佈的代碼是否以某種方式失敗? –
'有一個錯誤,說ComboPooledDataSource是最終的類,不能被嘲笑' – Phas1c
他問你什麼時候嘲笑界面。 –