我有以下情形:方法呼叫转移的单元测试策略是什么?
public class CarManager { .. public long AddCar(Car car) { try { string username = _authorizationManager.GetUsername(); ... long id = _carAccessor.AddCar(username, car.Id, car.Name, ....); if(id == 0) { throw new Exception("Car was not added"); } return id; } catch (Exception ex) { throw new AddCarException(ex); } } public List AddCars(List cars) { List ids = new List(); foreach(Car car in cars) { ids.Add(AddCar(car)); } return ids; } }
我嘲笑了_reportAccessor,_authorizationManager等
现在我想单元测试的CarManager类。 我应该有AddCar()多次试验,如
AddCarTest() AddCarTestAuthorizationManagerException() AddCarTestCarAccessorNoId() AddCarTestCarAccessorException()
对于AddCars()我应该重复以前的所有测试,AddCars()调用AddCar() - 这似乎是重复自己?我可能不应该从AddCars()调用AddCar()? < p />
请帮忙。
代码没有完全显示试图修复 – Xerx 2008-09-19 11:19:07