您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > Nunit
NUnitForms測(cè)試GUI應(yīng)用程序的工具
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2015/4/27 11:22:57 ] 推薦標(biāo)簽:NUnitForms GUI 應(yīng)用程序 單元測(cè)試

  對(duì)于層層嵌套控件的命名,請(qǐng)參考下面的例子
  控件的命名 NUnitForms通過(guò)控件的Name屬性來(lái)查找你要測(cè)試的控件. 如果在一個(gè)form中有多個(gè)相同名稱的控件, 那么他們必須像下面這樣進(jìn)行限定:
  Form    PanelA      UserControl1        Button           (PanelA.UserControl1.Button)       UserControl2        Button           (UserControl2.Button)    PanelB      UserControl1        Button           (PanelB.UserControl1.Button)
  Model/Modeless Dialog 模式窗體/非模式窗體
  當(dāng)測(cè)試窗體時(shí),如果這個(gè)窗體要調(diào)出子窗體或是調(diào)出對(duì)話框,這時(shí)需要把窗體的測(cè)試邏輯放到一個(gè)public void簽名的方法中,并用ExprectModel指定方法名稱:
[Test]
public void TestOKButtonTest()
{
ExpectModal("FormName", "formNameHandler");
FormName form = new FormName();
form.ShowDialog();

public void formNameHandler ()
{
ButtonTester buttonTester = new ButtonTester("okButton", " FormName");
// Check the OK button's text and then click it
Assert.AreEqual("OK", buttonTester.Text, "FormName’s OK button text is wrong '" +  buttonTester.Text + "'");
buttonTester.Click();
}
  測(cè)試時(shí),如果要調(diào)出message box,請(qǐng)參考下面的寫(xiě)法
  ExpectModal("messageBoxCaption", "messageBoxClickerMethod");
  多線程測(cè)試
  如果運(yùn)用到多線程測(cè)試窗體,應(yīng)該像下面的例子一樣,注冊(cè)一個(gè)委托類型,把測(cè)試代碼放到該方法中
public void genericFormHandler()
{
// Do nothing in this method!
}

[Test]
public void MainFormTest()
{

MainGUIForm mainForm = new MainGUIForm();
mainForm.OnFormReady += new EventHandler<EventArgs> (mainFormTestLogic);
ExpectModal("MainGUIForm", "genericFormHandler");
mainForm.ShowDialog();

}
public void mainFormTestLogic (object sender, EventArgs e)
  目前可以下載到的版本是NUnitFormsV2.0.0.5 alpha4。
  單元測(cè)試的目的是改善代碼
  既然可以調(diào)出窗體,可以測(cè)試自定義控件,這是一種測(cè)試自定義控件的好方法。
  測(cè)試項(xiàng)目與Resharper配合起來(lái),很容易啟動(dòng),調(diào)試,修改,這樣做單元測(cè)試,才是有益于改善代碼的測(cè)試。

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