您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
notyy的junit教程
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/1/7 15:37:57 ] 推薦標(biāo)簽:

  Test a little ,code a little ,實戰(zhàn)junit
  
  Notyy的junit教程(一)
  
  有了junit,java程序的單元測試變成非常簡單的事。而在寫代碼前先寫測試這個似乎不可思議的規(guī)定也變的十分合理而且能有效的幫助程序的設(shè)計。
  
  下面是一個aclearcase/" target="_blank" >ccountbean的例子,假設(shè)我們要實現(xiàn)一個帳戶管理程序,能夠向帳戶中增加、減少金額,還能在帳戶間轉(zhuǎn)帳。很顯然需要有一個account類,且慢寫代碼!在寫代碼前先寫測試,測試如何寫?假設(shè)你已經(jīng)有這個account類,你希望如何使用它?顯然首先要初始化它,一個帳戶應(yīng)該知道他的擁有者,和他現(xiàn)有的金額,那么他應(yīng)該有個構(gòu)建器形如:
  
  account(String Owner,double Balance);那先寫測試這個構(gòu)建器的代碼,如下:
  
  package account;
  
  
  
  import junit.framework.TestCase;
  
  
  
  public class AccountTest extends TestCase {
  
  private Account AccountA;
  
  private Account AccountB;
  
  public AccountTest(String name) {
  
  super(name);
  
  }
  
  public static void main(String args[]) {
  
  junit.textui.TestRunner.run(AccountTest.class);
  
  }
  
  public void testAccount(){
  
  AccountA=new Account("notyy",100);
  
  AccountB=new Account("bricks",200);
  
  assertEquals("notyy",AccountA.Owner);
  
  assertEquals(100,AccountA.Balance,2);
  
  assertEquals("bricks",AccountB.Owner);
  
  assertEquals(200,AccountB.Balance,2);
  
  }
  
  }這段代碼無法編譯,因為沒有account類,我們來為account類寫個骨架,使他能夠編譯。代碼如下:
  
  package account;
  
  
  
  public class Account {
  
  private String Owner;
  
  private double Balance;
  
  public Account(String aOwner,double aBalance) {
  
  }
  
  }
  
  編譯后,寫個批命令來運行測試程序,如下:
  
  test.bat
  
  java -cp %classpath%;d:javaprjaccountclasses account.AccountTest
  
  別忘了把junit.jar包含在你的classpath里,junit的配置這里不再多說。
  
  運行test.bat得到如下結(jié)果
  
  FAILURES!!!
  
  Test Results:
  
  Run:1 Failure :1 Errors:0
  
  There was 1 failure
  
  1) testAccount(account.AccountTest) “expected . but was ”
  
  感覺如何,測試程序得出了我們預(yù)料的結(jié)果,因為構(gòu)建器還沒有實現(xiàn)呢!
  
  現(xiàn)在我們來實現(xiàn)構(gòu)建器
  
  public Account(String aOwner,double aBalance) {
  
  Owner=aOwner;
  
  Balance=aBalance;
  
  }

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