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

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
Junit測試預期異常
作者:網絡轉載 發布時間:[ 2014/9/30 13:48:48 ] 推薦標簽:Junit 測試 開源軟件測試

  開發人員常常使用單元測試來驗證的一段兒代碼的操作,很多時候單元測試可以檢查拋出預期異常( expected exceptions)的代碼。在Java語言中,JUnit是一套標準的單元測試方案,它提供了很多驗證拋出的異常的機制。本文探討一下他們的優點。
  我們拿下面的代碼作為例子,寫一個測試,確保canVote() 方法返回true或者false, 同時你也能寫一個測試用來驗證這個方法拋出的IllegalArgumentException異常。
  public class Student {
  public boolean canVote(int age) {
  if (i<=0) throw new IllegalArgumentException("age should be +ve");
  if (i<18) return false;
  else return true;
  }
  }
  (Guava類庫中提供了一個作參數檢查的工具類--Preconditions類,也許這種方法能夠更好的檢查這樣的參數,不過這個例子也能夠檢查)。
  檢查拋出的異常有三種方式,它們各自都有優缺點:
  1.@Test(expected…)
  @Test注解有一個可選的參數,"expected"允許你設置一個Throwable的子類。如果你想要驗證上面的canVote()方法拋出預期的異常,我們可以這樣寫:
  @Test(expected = IllegalArgumentException.class)
  public void canVote_throws_IllegalArgumentException_for_zero_age() {
  Student student = new Student();
  student.canVote(0);
  }
  簡單明了,這個測試有一點誤差,因為異常會在方法的某個位置被拋出,但不一定在特定的某行。
  2.ExpectedException
  如果要使用JUnit框架中的ExpectedException類,需要聲明ExpectedException異常。
  @Rule
  public ExpectedException thrown= ExpectedException.none();
  然后你可以使用更加簡單的方式驗證預期的異常。
  @Test
  public void canVote_throws_IllegalArgumentException_for_zero_age() {
  Student student = new Student();
  thrown.expect(NullPointerException.class);
  student.canVote(0);
  }
  或者可以設置預期異常的屬性信息。
  @Test
  public void canVote_throws_IllegalArgumentException_for_zero_age() {
  Student student = new Student();
  thrown.expect(IllegalArgumentException.class);
  thrown.expectMessage("age should be +ve");
  student.canVote(0);
  }

上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 国产香港日本三级在线观看 | 午夜国产在线观看 | 秋霞午夜鲁丝片午夜精品久 | 午夜在线观看视频在线播放版 | 亚洲国产91在线 | 女女同性一区二区三区四区 | 黄色毛片大全 | 国产精品九九视频 | 中文亚洲字幕 | 亚洲欧美在线综合一区二区三区 | 亚洲国产第一 | 亚洲免费高清视频 | 欧美色图综合网 | 欧美日韩一区二区三区在线视频 | 日本三级唾液浓厚在线观看 | 欧美一区二区三区在线观看不卡 | 国产综合成人亚洲区 | 免费高清特黄a 大片 | 国产第一草草影院 | 伦理久久 | 精品国内自产拍在线视频 | 丁香激情综合网 | 日韩a免费| 日本二区视频 | 欧美在线一区二区三区不卡 | 日韩欧美综合 | 小明永久免费大陆在线观看 | 午夜按摩 | 亚洲夜夜骑 | 婷婷午夜影院 | 国产精品第五页 | 久久亚洲精品成人 | 中国日韩欧美中文日韩欧美色 | 亚洲国产成人91精品 | 麻豆久久婷婷国产综合五月 | 亚洲一区在线视频 | 日韩经典中文字幕 | 亚洲动漫第一页 | 国产精品毛片一区二区三区 | 亚洲国产欧美另类 | 欧美日韩中文在线 |