Так у меня есть класс, который выглядит примерно следующим образом:Как я могу выполнить тестирование перегруженных функций?
public class MyClass
{
DatabaseDependency _depend;
public MyClass(DatabaseDependency depend)
{
_depend = depend;
}
public string DoSomething(DBParameter database)
{
var result = _depend.GetResults(database, ...);
string response = String.Empty;
// some logic to process the result
return response;
}
}
Где DbParameter простой класс, значение, которое содержит свойства, такие как сервер, DbName, DBTYPE и т.д.
Теперь я хочу добавить перегрузка в DoSomething, чтобы он принимал строку подключения вместо параметра DBParameter (предположим, что DatabaseDependency уже имеет перегрузку GetResults, которая принимает строку соединения).
Мой вопрос: У меня есть несколько модульных тестов, которые описывают различные логические пути, используемые для обработки результата из DatabaseDependency.GetResults. Когда я добавляю перегрузку в DoSomething, я бы по существу реорганизовал код, чтобы эта логика была повторно использована обеими перегрузками (т. Е., Вероятно, перевести его в частный метод). Каков правильный способ тестирования модуля? Нужно ли мне иметь столько же модулей для проверки всех логических путей для новой перегрузки, которую я добавляю?