嗨想伸手向社會上獲得的辦法爲我開展工作的測試驅動開發見解和意見 。爲ASP.NET MVC 3測試驅動開發 - 解析XML源文件
我正在解析一個物理XML文件(包含圖表和表格數據)的ASP.NET MVC3項目。 首先,應用程序生成xml節點的模型表示。 控制器可以提供最終呈現給包含圖表和表格的特定HTML視圖的應用程序邏輯,
。
我在想,我將建立一個模型,它代表了xml,即像數據集,標題,尺寸等類的類,其中 適當的接口。這是正確的做法嗎? (請參閱下面的示例xml)
我會寫什麼樣的單元測試? 我會開始訪問物理XML文件(可能不是)的單元測試嗎? 我應該將fragmlx的xml字符串流入Xdocument嗎? (是不是那teting .net代碼?) 假設我不想創建具體的XDocument類,如何模擬出對象,例如
我想要做的第一個測試(我認爲)是加載xml和測試END_DATE是正確
我有加載xml和返回與屬性結束日期的報頭的一個類表示的XMLHelper類。
所以我具體的代碼看起來大致如下
var dataset = XmlHelper.Load(filePathOrXmlStream);
var header=dataset.Header;
Assert.AreEqual("5/06/2011",header.EndDate);
推測如下XML用於流或文件加載。
XML源
<dataset>
<header>
<end_date>5/06/2011</end_date>
<dimension id="mkt" desc="market">
<item mkt="0" desc="Company A" />
<item mkt="1" desc="Company B" />
</dimension>
<dimension id="prd" desc="product">
<item prd="0" desc="Product A " Groups_Total="Segment Totals" Total="Yes" Product="All" grp="Category" />
</dimension>
<dimension id="msr" desc="measure">
<item msr="0" tag="ACTIVE_1" desc="Active Products" />
</dimension>
<dimension id="tim" desc="time">
<item tim="0" tag="LAST WEEK -52" desc="06/06/10 " />
<item tim="1" tag="LAST WEEK -26" desc="05/12/10 " />
<item tim="2" tag="LAST WEEK 0" desc="05/06/11 " />
</dimension>
</header>
<data>
<dpGroup tim="0">
<dp mkt="0" prd="0" msr="0" tim="0">1031</dp>
<dp mkt="1" prd="0" msr="0" tim="0">986</dp>
</dpGroup>
<dpGroup tim="1">
<dp mkt="0" prd="0" msr="0" tim="1">970</dp>
<dp mkt="1" prd="0" msr="0" tim="1">937</dp>
</dpGroup>
<dpGroup tim="2">
<dp mkt="0" prd="0" msr="0" tim="2">982</dp>
<dp mkt="1" prd="0" msr="0" tim="2">955</dp>
</dpGroup>
</data>
</dataset>