亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > Nunit
NUnit 快速入門
作者:網絡轉載 發布時間:[ 2014/1/15 9:16:10 ] 推薦標簽:NUnit 測試 開源

本測試處理[Test]屬性,還有一個[ExpectedException ]屬性與之關聯-這是一種用來描述測試代碼期望某種特定異常的方式。如果這種異常在執行的過程中沒有拋出-測試失敗。編譯你的代碼并返回到GUI。在你編譯測試代碼的同時,GUI變灰,并且收緊測試樹,因為測試還沒有運行(當測試樹結構改變時,GUI會觀察測試的程序集的改變,并更新它自己-例如,加入新的測試等)。點擊“Run”按鈕-我們又有一個紅色的狀態條。我們會得到如下失敗:

TransferWithInsufficentFunds : InsufficientFundsException was expected

讓我們再一次修復Account代碼,按如下方法修改TransferFunds:

public void TransferFunds(Account destination, float amount)
{
 destination.Deposit(amount);
 if(balance-amount<minimumBalance)
  throw new InsufficientFundsException();
 Withdraw(amount);
}

編譯并運行測試-綠色的狀態條。成功了!但是等等,看看我們剛才編寫的代碼,我們會發現銀行可能在每個沒有成功的轉帳操作失去一筆錢。讓我們編寫一個測試來證明我們的疑慮,增加如下測試方法:

[Test]
public void TransferWithInsufficientFundsAtomicity()
{
 Account source = new Account();
 source.Deposit(200.00F);
 Account destination = new Account();
 destination.Deposit(150.00F);
 try
 {
  source.TransferFunds(destination, 300.00F);
 }
 catch(InsufficientFundsException expected)
 {
 }

 Assert.AreEqual(200.00F,source.Balance);
 Assert.AreEqual(150.00F,destination.Balance);
}

我們正測試業務方法的事務屬性-要么都成功,要么都失敗。編譯并運行-紅條。OK,我們已經讓$300.00蒸發了((1999.com déjà vu?)-源帳戶有一個正確余額150.00,但是目標帳戶則是$450.00.我們如何修復?我們僅需要將小余額檢查調用放在更新的前面即可:

public void TransferFunds(Account destination, float amount)
{
 if(balance-amount<minimumBalance)
  throw new InsufficientFundsException();
 destination.Deposit(amount);
 Withdraw(amount);
}

如果Withdraw()方法拋出另外一個異常怎么辦?我們應該在捕獲代碼段中執行一個追加的業務,或是依賴我們的事務管理器來恢復對象的狀態?關于這點,我們需要回答一些問題,但不是現在。同時,我們應該對失敗的測試些什么呢?刪除它?一個比較好的方式是暫時忽略它,在測試代碼中加入如下屬性:

[Test]
[Ignore("Decide how to implement transaction management")]
public void TransferWithInsufficientFundsAtomicity()
{
 // code is the same
}

編譯并運行-黃色的狀態條。點擊“Tests Not Run”,在列表里你會看到e bank.AccountTest.TransferWithInsufficientFundsAtomicity() ,而且帶有測試忽略的原因:

看一下我們的測試代碼,我們會發現某些重構是有順序的。所有測試方法都共享一組通用的測試對象。我們將這個初始化代碼提取到一個setup方法里,并在所有測試中重用它。我們測試類的重構版本如下:

上一頁1234下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 波多野结衣视频免费 | 全免费观看a级毛片 | 99视频精品全部国产盗摄视频 | 午夜影院伦理片 | 国产精品七七在线播放 | 欧类av怡春院 | 亚洲性爰视频 | 99re5精品视频在线观看 | 非洲精品性hd | 国产综合激情在线亚洲第一页 | 黄色小视频在线观看免费 | 国产大学生一级毛片绿象 | 婷婷四房综合激情五月性色 | 天天碰天天操 | 日韩亚洲国产欧美精品 | 国产综合精品日本亚洲777 | 久久国产高清波多野结衣 | 爱福利视频网 | 国产一精品一aⅴ一免费 | 欧美一区二区三区男人的天堂 | 男无遮挡吃奶gift动态图 | 久久久久亚洲视频 | 日日干日日插 | 丁香激情五月 | 免费在线观看h片 | 日本 片 成人 在线 日本3级网站 | 日韩精品在线视频观看 | 好吊色几万部永久免费视频 | 久久精品香蕉视频 | 免费的一极毛片在线播放 | 丝袜美女足交 | 日本欧美一区二区免费视 | 黄色网址视频 | 中国国产一国产一级毛片视频 | 亚洲视频一区二区在线观看 | 宅男午夜剧场 | 乱肉伦孕小说在线阅读 | 欧美韩国日本在线 | 亚洲美女激情 | 香蕉福利| 久热99|