JUnit 學習筆記

2021-07-09 22:29:57 字數 1724 閱讀 9118

寫了個類,要給別人用,會不會有bug

?怎麼辦?測試一下。

用main

方法測試好不好?不好!

1. 不能一起執行!

2. 大多數情況下需要人為的觀察輸出確定是否正確

重用測試,應付將來的實現的變化。

提高士氣,明確知道我的東西是沒問題的。

1. new project

2. 建立類

3. 建立testcase

1. assertthat

2. 使用hamcrest

的匹配方法

a) 更自然

3. 示例

a) assertthat( n, allof( greaterthan(1), lessthan(15) ) );

assertthat( n, anyof( greaterthan(16), lessthan(8) ) );

assertthat( n, anything() );

assertthat( str, is( "bjsxt" ) );

assertthat( str, not( "bjxxt" ) );

b) assertthat( str, containsstring( "bjsxt" ) );

assertthat( str, endswith("bjsxt" ) ); 

assertthat( str, startswith( "bjsxt" ) ); 

assertthat( n, equalto( nexpected ) ); 

assertthat( str, equaltoignoringcase( "bjsxt" ) ); 

assertthat( str, equaltoignoringwhitespace( "bjsxt" ) );

c) assertthat( d, closeto( 3.0, 0.3 ) );

assertthat( d, greaterthan(3.0) );

assertthat( d, lessthan (10.0) );

assertthat( d, greaterthanorequalto (5.0) );

assertthat( d, lessthanorequalto (16.0) );

d) assertthat( map, hasentry( "bjsxt", "bjsxt" ) );

assertthat( iterable, hasitem ( "bjsxt" ) );

assertthat( map, haskey ( "bjsxt" ) );

assertthat( map, hasvalue ( "bjsxt" ) );

1. failure是指測試失敗

2. error是指測試程式本身出錯

1. @test: 測試方法

a) (expected=xxexception.class)

b) (timeout=***)

2. @ignore: 被忽略的測試方法

3. @before: 每乙個測試方法之前執行

4. @after: 每乙個測試方法之後執行

5. @beforeclass: 所有測試開始之前執行

6. @afterclass: 所有測試結束之後執行

1. 遵守約定,比如:

a) 類放在test包中

b) 類名用***test結尾

c) 方法用testmethod命名

testng

junit學習筆記

test 測試乙個方法 before 測試方法的前置條件 每個方法執行之前都會執行 after 測試方法的後置條件 每個方法執行之後都會執行 beforeclass 測試方法的前置條件 在類載入的時候就呼叫,只執行一次 標記的方法需要為static的 afterclass 測試方法的後置條件 在類銷...

JUnit學習筆記

一 junit測試框架有以下重要特性 二 junit的一些注意事項 三 測試失敗說明 四 一些常用註解 五 junit中 重要api 1 assert類 void assertequals boolean expected,boolean actual 檢查兩個變數或者等式是否平衡 void ass...

Java學習筆記(JUnit)

1.單體測試類必須要繼承testcase類。2.測試方法必須是public void 開頭。3.方法名稱為test開頭。4.方法無引數。5.assert.assertequals等方法的引數順序 第乙個為期望值,第二個為實際值。不要顛倒了。6.可選執行方式 1 eclipse自帶外掛程式,以run ...