[英]Writing a unit test case
我已經開始在某些項目中使用單元測試,但我遇到了一個小問題,我需要測試一種方法,並且我的示例用盡了:
public class Clients
{
Public Assignment AssignClient(int? clientRef, int? productRef)
//Assignment is an enum that has success,Failure,etc...
{
If(!checkClientAge(int clientRef)) Return Assignment.Tooyoung;
If(!checkClientAvailability(int clientRef)) Return Assignment.NotAvailable;
If(! checkProductavailability(int productRef)) Return Assignment.ProductNotAvailable;
}
}
我在客戶端類和AssignClient
上進行了模擬,但是我不確定如何使用三種布爾方法,不確定您是否對如何模擬這些方法有任何想法?
如果要測試Clients
類,則不要模擬它,您需要一個真實的實例。 相反,您可以模擬它使用的其他類,以便可以從中返回已知且可預測的結果,並消除數據庫訪問,UI交互等復雜性。
除非對私有方法的三個調用設置了外部可見的標志或屬性,否則AssignClient
方法不是單元測試的理想選擇-如果它們沒有設置,則外部的標志或屬性-如果它們沒有,則沒有什么要衡量或觀察的,您將無法確定測試是成功還是失敗。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.