0
如何編寫逃逸或繞過正在測試一個大的方法中一些方法和條件測試。與省略對方法的方法中的一些方法,還有一些條件編寫單元測試被測試
例如,我有下面這個方法:
public bool IsValid(int id)
{
var details = _myService.GetDetails(id); // This line should be avoided in test
var doctorDetails = _myService.GetDoctorDetails("AUS"); // This needs to be executed
if(details.Name == "Ab") // This if I dont want to be part of my test
{
// Do something
}
if(doctorDetails !=null)
{
// Code to test
}
}
編輯我的代碼,我只需要在第二個IF在我的方法來測試語句。如上所述,我需要對doctorDetails的價值進行編碼以便從服務中獲取數據,因爲爲了從服務中獲取數據,應該存在細節,但事實並非如此。否則,唯一的選擇就是嘲笑它,並在數據庫儲存的信息,並調用該服務,但我不想現在
是否可以從班級外部訪問'_myService'?你可以嘲笑它,並將它注入到IsValid居住的類中嗎? –
@GrantWinney:我是新來的測試,是的,我想,怎麼寫測試我的要求,請幫我看看代碼 – Learner
@GrantWinney:我簡單的問題是,如何進行硬編碼bvalue doctordetails的ratehr不是從服務獲取它,然後只測試第二個if語句。 Doctordetails只是一個字符串值 – Learner