//測試 getBigHouses()所取出的房子都是>50坪的房子 @Test public void testHousePing(){ List<House> houses=service.getBigHouses(); for (House house : houses) { assertTrue(house.getPing().intValue()>50); } }
乍看之下好像沒有錯誤,但是如果getBigHouses() 本身就寫錯了,根本就沒有取出任何House,這時跑這支Test 仍舊會過,因為 service.getBigHouses() 取出的 houses 是空的 ,所以根本沒有進入迴圈,因此Test 再沒有任何的assert 下就過了。
所以在進行迴圈測試時,一定要先測Size,確定有資料取出,才不會造成空迴圈測試仍過的誤判。
//測試 getBigHouses()所取出的房子都是>50坪的房子 @Test public void testHousePing(){ List<House> houses=service.getBigHouses(); assertTrue(houses.size()>0); //一定要先測size for (House house : houses) { assertTrue(house.getPing().intValue()>50); } }
沒有留言:
張貼留言