文章插圖

文章插圖
【java的測試工具 java軟件測試工具】junit是一個優秀的開源的java單元測試框架,也是目前比較流行且使用頻率比較高的一款,今天我們就來講講junit怎么用 。junit主要用于白盒測試、回歸測試、單元測試 。
首先我們來新建工程,還是跟原來一樣建立 。建立之后看看pom.xml文件,已經默認的加入了junit的依賴
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>看看我們建立的工程,idea都給我們生成了什么樣的目錄結構@[email protected](SpringRunner.class)//使用SpringRunner加載上下文publicclassLesson9ApplicationT[email protected]//這個是一個test單元測試文件publicvoidtest1(){intnum=newInteger(1);Assert.assertEquals(num,1);}}在這個方法的左邊會有響應的圖標,第一個葉子樣的圖標標注這個是一個springboot的測試文件,在啟動的時候能看到我們正常啟動Application的banner圖標,說明加載了springboot的上下文 。我們直接在第二個圓形√加三角形的圖標點擊,就能運行了 。
[email protected],[email protected],[email protected]
上面的代碼有一個陌生的Assert斷言,這個東西是干嘛的呢,簡單的可以理解為if條件 。斷言里面的值應該返回什么樣的值 。Assert.assertEquals(num,1) 。
這個你可以理解為if(num==1)System.out.println(“ok”);但是這個方法有很多種重載的類
assertTrue/False 判定第一個條件是true還是falseassertEquals 接收兩個參數,第一個是參數值,第二個是希望返回的值assertNotEquals 這個跟上一個方法恰好相反,相當于if(param!=param2)assertSame/NotSame 判定兩個變量是否指向同一個內存地址
@Testpublicvoidtest2(){List<String>list1=Arrays.asList("a","b");List<String>list2=Arrays.asList("a","b");List<String>list3=list2;Assert.assertEquals(list1,list2);//通過Assert.assertEquals(list3,list2);//通過Assert.assertSame(list3,list2);//通過Assert.assertSame(list1,list2);//不通過,因為list1和list2分別指向不同的內存地址}web模擬[email protected]?
@SpringBootTest(webEnvironment=SpringBootTest.WebEnvironment.RANDOM_PORT)@AutowiredprivateTestRestTemplatetestRestTemplate;@Testpublicvoidtest3()throwsURISyntaxException{Stringresult=testRestTemplate.getForObject("/demo/test1",String.class);Assert.assertEquals(result,"hellojunittest");}TestRestTemplate 是不是很熟悉,是的Springboot還為RestTemplate建立了專門的測試類 。注意:一定要使用隨機端口啟動,否則執行失敗 。但是筆者感覺這個專門寫個測試類很麻煩,還不如直接使用postman測試,你們覺得呢?數據庫測試
@[email protected](){Useruser=newUser();user.setName("abc");user.setAge(19);user.setBirthday(newDate());userJpa.save(user);Assert.assertTrue(user.getId()!=null);Assert.assertNotNull(user.getId());}注意:如果不想污染數據庫,[email protected],執行成功之后數據庫事務會回滾,不會將數據真正插入到數據庫中 。idea為我們快速的創建test單元測試文件提供了快捷方式
- mysql找出重復的數據 mysql重復數據查詢
- 服務器的主機名是什么意思 主機名和服務器名
- 張一山的父母是做什么的 張一山父親張曉武真實身份
- Access和Excel的區別 excel和access哪個實用
- 姓名的正則 正則 取名
- 單機PC游戲推薦 好玩的單機游戲pc推薦
- 蠶豆炒多久熟
- 吃什么補陽虛_補陽虛的食物
- 麻花湯的做法
- 什么是ASO aso的作用是什么
