我有很多以下類型的代碼(每個代碼都從不同的表中獲取數據)。如何編寫異常處理的自動化測試
public class TableOneDAO
{
public TableOneDAO(IDbConnection dbConnection)
{
_dbConnection = dbConnection;
_log = LogFacade.GetLog();
_tableOneRowMapper = new TableOneRowMapper();
}
public IList<TableOneRecord> FindAll()
{
try
{
using (IDbCommand cmd = _dbConnection.CreateCommand())
{
cmd.CommandText = TableOneSql.FindAllSql();
return _tableOneRowMapper.GetObjectList(cmd.ExecuteReader());
}
}
catch (Exception exception)
{
_log.Error(exception.Message, exception);
throw;
}
}
private readonly IDbConnection _dbConnection;
private readonly TableOneRowMapper_tableOneRowMapper;
private readonly ILog _log;
}
_tableOneRowMapper.GetObjectList(cmd.ExecuteReader())從數據庫中獲取數據,並將其映射到一個列表。我們已經有了過去的記錄問題,導致映射問題,現在想立即記錄這些記錄,然後將它們放到調用應用程序中。除了異常處理之外,我還測試了一切。我必須保持一般的異常處理。
我使用或有以下可使用:
- 的.Net 3.5
- NUnit的2.5.10.11092
- 犀牛嘲笑3.6
VS MY問題:
- 如何爲 異常處理創建自動化測試(單元或集成)?
- 我是否需要注入TableOneRowMapper和 模擬它,所以它調用時會引發異常?
- 有沒有其他的 方法來做到這一點,而不注入它?
- 我不擔心測試異常處理嗎?
謝謝。我想我知道答案。猜猜我需要構造。 –