如何在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()**測試方法將被跳過執行。

更新於:2020年7月29日

418 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告