मैं सार तत्वों और उनके अंदर संरक्षित तरीकों का परीक्षण कैसे कर सकता हूं? मुझे पता है कि आप में से कुछ सुझाव देंगे कि मुझे अमूर्त वर्ग का परीक्षण नहीं करना चाहिए, बल्कि इसके बजाय प्राप्त कक्षाओं का परीक्षण करना चाहिए। बात यह है कि, मैं ऐसा नहीं करना चाहता। मैं कड़ाई से सार वर्ग का परीक्षण करना चाहता हूं। यहां नमूना वर्ग है:यूनिट-परीक्षण सार वर्ग और उनके अंदर संरक्षित विधियां
public interface IF_SystemMessageHandler
{
...
}
public interface IF_SystemMessageSender
{
...
}
public abstract class Component : IF_SystemMessageSender
{
private eVtCompId mComponentId;
private eLayer mLayerId;
private IF_SystemMessageHandler mLogger;
protected Component(eVtCompId inComponentId, eLayer inLayerId, IF_SystemMessageHandler inMessageHandler)
{
mLayerId = inLayerId;
mComponentId = inComponentId;
mLogger = inMessageHandler;
}
protected void SendSystemMessage(ref eSystemMsgLevel inSystemMsgLevel, ref string inSysMsg)
{
mLogger.SendSystemMessage(...);
}
protected void SendSystemMessage(ref eSystemMsgLevel inSystemMsgLevel, ref eTextId inSysMsgID)
{
mLogger.SendSystemMessage(...);
}
public void SetMessageHandler(ref IF_SystemMessageHandler InSystemMessageHandler)
{
mLogger = InSystemMessageHandler;
}
}
मैं इसके लिए एक यूनिट परीक्षण लिख रहा हूं। मुझे पता है कि मैं जो कुछ कर सकता हूं वह एक इकाई-परीक्षण ढांचे का उपयोग करता है (मेरे पास मोक है), लेकिन मुझे इस बारे में कोई जानकारी नहीं है कि इस विशेष उदाहरण के लिए इसका उपयोग कैसे किया जाए।
कोड के लिए Kudos। यह जवाब @ulises के मुकाबले काफी बेहतर है –