現代軟體工程 練習與討論 第十三章 軟體測試

來源:互聯網
上載者:User

標籤:style   blog   http   io   使用   ar   java   for   sp   

13.5.2有錯不改

 

此題很明顯是一個邊界的取值問題,這確實是一個bug,是微軟的演算法設計失誤。閏年的計算:

a.被 400 整除的年份

b.被 100 整除, 但是不被400 整除的年份

c.被 100 整除, 同時被400 整除的年份

d.被 4 整除, 但是不被100 整除的年份

e.被 4 整除, 同時被100 整除的年份

f.偶數, 不被4 整除的年份

g.奇數年份

h.其它非法輸入的年份

此外還有重要的一點,就是邊界。設計允許的最小的年份和設計允許的最大的年份.所以根據邊界分析,測試者一定要發現閏年的第一天;閏年的最後一天;平年的第一天;平年的最後一天。

 

 

13.5.9  練習——學習和使用多個平台上的測試載入器

 

我做項目一般都是用JAVA作為開發語言,ECLIPSE作為IDE工具,其中,測試載入器我用的最多的就是JUnit了。尤其是我做eb開發使用Hibernate作為架構的時候,幾乎每一個模組都會使用Junit。

JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個迴歸測試架構(regression testing framework)。Junit測試是程式員測試,即所謂白盒測試,因為程式員知道被測試的軟體如何完成功能和完成什麼樣的功能。Junit是一套架構,繼承TestCase類,就可以用Junit進行自動化的測試了。

步驟(引用,出處為http://hefeng1987-net-163-com.iteye.com/blog/1571040,另外還有一個比較好的配圖說明,網址為

http://wenku.baidu.com/link?url=sxTuc9Xv3-p4-Nk5-yk02tjeLVPdQEI9otnmmKjz1hStDfxJpw5D8a8K3OzLZVh054_cdak4pTOd4MNU8Obt4gapiK17zBvYv-Dk8LCb7Ii):

 

1.為項目匯入Junit的jar包(Build path -> Add Library ->Junit)。 

2.建立一個名為Test的Source Folder,用於存放測試類別原始碼。 

3.目標類與測試類別應該位於同一個報下面,這樣測試類別中就不必匯入原始碼所在的包,因為他們位於用一個包下面。 

4.Junit4並不需要測試類別繼承TestCase父類。 

5.在一個測試類別中,所有被@Test註解所修飾的public void方法都是testCase(測試案例),可以被Junit所執行。 

6.規範:雖然Junit4並不要求測試方法名以test開頭,但最好還是按照Junit3的要求那樣,以test作為測試方法名的開頭。 

7.在Junit4中,通過@Before註解實現與Junit3中的setUp方法同樣的功能。 

8.在Junit4中,可以使用@BeforeClass與@AfterClass註解修飾一個public static void no—arg的方法,這樣被@beforeClass註解所修飾的方法會在所有測試方法執行前執行。 

9.註解@lgnore可用於修飾測試類別與測試方法,當修飾測試類別時,表示忽略掉類中的所有測試方法;當修飾測試方法時,表示忽略掉該測試方法。 

10.參數化測試(Parameters):當一個測試類別使用參數化運行器運行時需要在類的聲明處加上 @RunWith(Parameterized.class)註解,表示該類將不使用JUnit內建的運行器運行, 而使用參數化運行器運行;在參數化運行類中提供參數的方法上要使用 @Parameters註解來修飾, 同時在測試類別的構造方法中為各個參數賦值(構造方法是由JUnit 調用的),最後編寫測試類別,它會根據參數的組數來運行測試多次。 

11.在JUnit4中,如果想要同時運行多個測試,需要使用兩個註解@RunWith(Suite.class)以及 @Suite.SuiteClasses()

 

 

13.5.10  曆史上的20 大bug(網頁暫時無法開啟,能開啟後再更新答案)

現代軟體工程 練習與討論 第十三章 軟體測試

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.