1 pytest安裝,識別,執行

2022-09-18 23:36:15 字數 2565 閱讀 6439

1:pytest安裝

python3 -m pip install pytest

驗證:pytest --version

2:pytest測試用例的識別與執行

識別:1:測試檔案(模組)以test_*.py或*_test.py

2:測試類以test*命名,測試用例以test_*的方法,

3:不在測試類的所有test_*的用例方法

執行:1:pytest:執行該命令目錄下的所有測試模組下的測試用例(預設是從上到下順序執行)

2:pytest -v:列印詳細的執行結果(會展示錯誤資訊)

3:pytest -v -s:會列印詳細執行結果和print函式的資訊

4:執行單獨的乙個py檔案:pytest -v 檔名.py(注意要在當前目錄下存在檔案)

5:執行某個模組裡面的某個測試類:pytest -v 檔名.py::測試類名

pytest -v test_01.py::testdemo

6:執行某個模組裡面的某個測試類某個測試方法:pytest -v 檔名.py::測試類名::測試方法名

pytest -v test_01.py::testdemo::test_one

7:跳過指定的測試用例:pytest -v -k "類名 and not 測試方法名"

pytest -v -k "testdemo01 and not test_three"

8:執行帶標記的測試方法@pytest.mark.標記名

9:執行報錯就就停止執行:pytest -v -x 檔名.py

pytest -v -x test_01.py

10:當用例執行錯誤達到指定的數量時,停止執行:pytest -v --maxfail=數量

11:失敗重新執行:

安裝:python3 -m pip install pytest-rerunfailures

pytest -v --reruns 重跑次數 --reruns-delay 每次重跑相隔時間

pytest -v --reruns 重跑次數 --reruns-delay 每次重跑相隔時間  -s  檔名.py

1:跑全部:pytest -v --reruns 3 --reruns-delay 1

2:跑單個模組

12:多條斷言有失敗也都能執行(通常第一條過不去,下面的斷言就不執行了),斷言報錯也向下執行

安裝:python3 -m pip install pytest-assume

13:簡單的顯示執行結果: pytest -q

3:pycharm設定pytest執行

1:執行單個測試用例

2:執行全部測試用例:pytest.main()

3:執行特定的命令(和cmd下執行一樣)

if __name__ == '__main__':

pytest.main('-v -x ')

4:斷言---pytest 裡面斷言實際上就是 python 裡面的 assert 斷言方法,常用的有以下幾種

5:pytest框架結構 

模組級:setup_module/teardown_module(優先順序最高---全域性前後)

類級別:setup_class/teardown_class(類中---測試類之前執行)

方法級別:setup_method/teardown_method(類中---在方法開始前(未呼叫方法)執行)

方法級別:setup/teardown(類中---在方法呼叫之前執行)

普通函式:setup_function/teardown_function(不在類中,在普通方法呼叫前執行)

pytest安裝與執行

1.安裝pytest pip install pytest pytest version 檢視安裝的版本 驗證是否安裝成功 3.編寫與執行規則 編寫pytest測試樣例非常簡單 測試檔案以test開頭 以test結尾也可以 測試類以test開頭,並且不能帶有 init 方法 測試函式以test 開頭...

pytest 1 安裝和簡單使用

最近在使用pytest做測試,記錄一些學習過程中的內容 測試檔案以test 開頭 以 test結尾也可 測試類以test開頭,注意,test首字母要大寫 測試類名稱後面直接跟冒號,而不能有 測試類不能帶有 init 方法 測試類裡的每個函式都必須有引數 self 測試函式以test 開頭,注意,這時...

pytest介紹 安裝及如何自動識別測試用例

pytest 基於unittest之上的單元測試框架,其特徵有 1 自動識別測試用例和測試方法 unittest當中,需要引入testsuite,主動載入測試用例 2 簡單的斷言表達 assert 表示式即可。unittest當中,self.assert 3 可以設定會話級 從執行所有用例開始到用例...