您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > TestNG
使用單元測(cè)試工具TestDriven.NET調(diào)試程序
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/3/27 15:08:06 ] 推薦標(biāo)簽:

  幾種調(diào)試方式

  ◆ 內(nèi)嵌調(diào)試

  所謂內(nèi)嵌調(diào)試是指在方法中有參數(shù)的情況下采取的一種簡(jiǎn)便的調(diào)試方式。

  例如我們需要調(diào)試如下方法:

public int CountAAddB(int a, int b)
{
return a + b;
}

  為了調(diào)試這個(gè)方法,我們采取在方法內(nèi)部初始化參數(shù)的方法來(lái)調(diào)試。

public int CountAAddB(int a, int b)
     {
         a = 2;
b = 3;
return a + b;
}

  然后利用TestDriven.NET 調(diào)試。

  內(nèi)嵌調(diào)試是調(diào)試包含輸入?yún)?shù)的方法時(shí),將輸入的參數(shù)在方法內(nèi)部賦值,調(diào)試/測(cè)試完畢后,再刪除內(nèi)部的賦值。這種方法相當(dāng)節(jié)省時(shí)間,但是不利于重復(fù)調(diào)試/測(cè)試。

  其實(shí)內(nèi)嵌調(diào)試并不能算是一種很正規(guī)的調(diào)試/測(cè)試方法,但是我們編程過(guò)程中會(huì)遇到如下問(wèn)題:第一:當(dāng)一個(gè)方法返回類(lèi)型為void 時(shí),你編寫(xiě)單元測(cè)試代碼如何去測(cè)試其正確性?第二,當(dāng)一個(gè)方法是private 時(shí),你用單元測(cè)試工具編寫(xiě)測(cè)試相當(dāng)麻煩(網(wǎng)上有人寫(xiě)過(guò)用反射來(lái)測(cè)試private方法,但是相當(dāng)麻煩)。而內(nèi)嵌調(diào)試在方法內(nèi)部快捷而簡(jiǎn)單。

  這里我還想說(shuō)一點(diǎn)的是,我們調(diào)試的預(yù)設(shè)值調(diào)試完畢后,注釋掉,方便下次變動(dòng)的時(shí)候在此調(diào)試。這樣避免忘記調(diào)試/測(cè)試用例。

  ◆ 內(nèi)接調(diào)試

  內(nèi)接調(diào)試是指內(nèi)部接口調(diào)試。例如我們需要測(cè)試CountAAddB 方法,我們編寫(xiě)了一個(gè)新的測(cè)試方法:

public void TestCountAAddB()
{
int i = CountAAddB(1, 2);
}

  然后調(diào)試這個(gè)方法,跟進(jìn)到CountAAddB 方法里面。

  內(nèi)接調(diào)試是編寫(xiě)樁模塊來(lái)調(diào)試被調(diào)試方法,在樁模塊中斷點(diǎn),然后跟進(jìn)到被調(diào)試方法中。這種方法需要增加一個(gè)額外的調(diào)試方法,可以進(jìn)行重復(fù)調(diào)試/測(cè)試。

  這個(gè)編寫(xiě)的測(cè)試方法,可以在要調(diào)試類(lèi)里面,也可以在要調(diào)試類(lèi)外面。

  ◆ 外接調(diào)試

  外接調(diào)試是指外部接口調(diào)試。例如我們需要調(diào)試CountAAddB方法,這個(gè)方法在ProjectCount 中,我們新建一個(gè)新的工程TestProCount,然后在這個(gè)工程里面引用ProjectCount 工程,在新建工程TestProCount 定義調(diào)試方法TestCountAAddB,斷點(diǎn)后然后步進(jìn)到ProjectCount工程中的CountAAddB 方法進(jìn)行調(diào)試。

  ◆ 烤串調(diào)試

  烤串調(diào)試是指測(cè)試某一個(gè)基于其它方法的基方法,像調(diào)試一串烤串。例如我們要測(cè)試如下代碼中Count方法:

public int CountAAddB(int a, int b)
{
   return a + b;
}
public int CountAMultiplyB(int a, int b)
{
   return a * b;
}
public void Count()
{
   int i = CountAAddB(1, 2);
   int j = CountAMultiplyB(3, 4);
   int ij = i + j;
}

  Count 方法應(yīng)用了兩個(gè)方法:CountAAddB和CountAMultiplyB,通常我們調(diào)試Count方法,也完成了對(duì)CountAAddB和CountAMultiplyB的調(diào)試。

上一頁(yè)123下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd