如何在pytest中跳過選定的測試用例?
我們可以跳過pytest中選定的測試用例。Pytest是Python的一個測試框架。要安裝pytest,我們需要使用命令**pip install pytest**。安裝後,我們可以使用命令**pytest –version**驗證Python是否已安裝。 pytest的版本將顯示。
Pytest可以用於建立和執行測試用例。它可以廣泛應用於API、UI、資料庫等各種測試。pytest的測試檔案命名約定是:以**test**_開頭或以_**test**結尾,並且每一行程式碼都應該在一個方法內,方法名應以**test**開頭。此外,每個方法都應該具有唯一名稱。
為了列印控制檯日誌,我們需要使用命令**py.test –v –s**。同樣,如果我們想執行特定pytest檔案的測試,命令是**py.test <檔名> -v**。
Pytest提供了在測試方法上使用標記的功能。標記用於為測試方法賦予屬性。一些預設標記包括skip、xfail和parametrize。此外,根據需要還可以自定義更多標記。
在某些情況下,由於應用程式中已知的bug或某個特定功能仍在開發中,測試方法可能會變得不相關。pytest測試框架提供了跳過測試方法執行的選項。
跳過標記與測試方法相關聯,語法如下:**@py.test.mark.skip**。此外,要使用標記,我們必須將**import pytest**匯入到我們的測試檔案。一旦測試方法變得相關,我們需要從測試方法中刪除skip標記。
讓我們考慮一個包含測試方法的pytest檔案。
import pytest @pytest.mark.loan @pytest.mark.skip def test_CalculateLoan(): print("Loan calculation") def test_CalculateLease(): print("Lease calculation")
讓我們考慮另一個包含測試方法的pytest檔案。
import pytest @pytest.mark.loan @pytest.mark.skip def test_CalculateRepay(): print("Loan calculation") def test_FindLease(): print("Lease search")
現在要執行所有測試用例,我們需要使用命令**py.test –v**。標記為**skip**的測試方法將被排除在執行之外。在本例中,**CalculateLoan()**和**CalculateRepay()**測試方法將被跳過執行。