什么是單元測(cè)試
寫(xiě)了個(gè)類(lèi),要給別人用,會(huì)不會(huì)有bug?怎么辦?測(cè)試一下。
用main方法測(cè)試好不好?不好!
不能一起運(yùn)行!
大多數(shù)情況下需要人為的觀(guān)察輸出確定是否正確
為什么要進(jìn)行單元測(cè)試
重用測(cè)試,應(yīng)付將來(lái)的實(shí)現(xiàn)的變化。
提高士氣,明確知道我的東西是沒(méi)問(wèn)題的。
JUnit4 HelloWorld
需要導(dǎo)入JUnit和hamcrest包
new project
建立類(lèi)
建立testcase
assertThat
使用hamcrest的匹配方法
放棄舊的斷言,使用hamcrest斷言
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" ) );
Failure和Error
Failure是指測(cè)試失敗
Error是指測(cè)試程序本身出錯(cuò)
JUnit4 Annotation
@Test: 測(cè)試方法
a) (expected=XXException.class)
b) (timeout=xxx)
2.@Ignore: 被忽略的測(cè)試方法
3.@Before: 每一個(gè)測(cè)試方法之前運(yùn)行
4.@After: 每一個(gè)測(cè)試方法之后運(yùn)行
5.@BeforeClass: 所有測(cè)試開(kāi)始之前運(yùn)行
6.@AfterClass: 所有測(cè)試結(jié)束之后運(yùn)行
運(yùn)行多個(gè)測(cè)試
注意
遵守約定,比如:
a) 類(lèi)放在test包中
b) 類(lèi)名用XXXTest結(jié)尾
c) 方法用testMethod命名
其他框架
TestNG
以上這篇JUnit單元測(cè)試入門(mén)必看篇就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。
當(dāng)前文章:JUnit單元測(cè)試入門(mén)必看篇-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)網(wǎng)址:http://aaarwkj.com/article30/coisso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、做網(wǎng)站、關(guān)鍵詞優(yōu)化、網(wǎng)站排名、手機(jī)網(wǎng)站建設(shè)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容