AdSense

網頁

2021/6/3

IntelliJ IDEA 執行測試覆蓋率 run test with coverage

IntelliJ IDEA 執行測試程式碼覆蓋率的方法如下。


以Spring Boot Test為例,下面是被測的程式OrderService.isLargeAmount()

OrderService

@Service
public class OrderService {

    public boolean isLargeAmount(int amount) {
        if (amount > 1000) {
            return true;
        } else {
            return false;
        }
    }
}

下面則是測試程式OrderServiceTests.isLargeAmount_10000_true()負責測試上面的OrderService.isLargeAmount()

OrderServiceTests

@SpringBootTest
public class OrderServiceTests {

    @Autowired
    private OrderService orderService;

    @Test
    public void isLargeAmount_10000_true() {
        boolean result = orderService.isLargeAmount(10000);
        Assertions.assertTrue(result);
    }
}

在測試程式OrderServiceTests.isLargeAmount_10000_true()上按滑鼠右鍵開啟選單,選擇[run 'isLargeAmount_10000_true' with Coverage]執行測試覆蓋率。



執行後可在右邊的Coverage視窗看到測試覆蓋率資訊,例如上面測試的行數覆蓋率為75%。



被測程式OrderService.isLargeAmount()在編輯器中可看到左側的程式碼行數有綠色及紅色,綠色代表有被測試執行到的部分,紅色為未被測試執行到的部分。



要再次執行同個測試覆蓋率可在上方功能列點選下面圖示。




沒有留言:

AdSense