一、pytest介紹
pytest是python的一種單元測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起來更簡潔,效率更高。
它具有如下特點:
1.非常容易上手,入門簡單,文件豐富,文件中有很多例項可以參考
2.能夠支援簡單的單元測試和複雜的功能測試
3.支援引數化
4.執行測試過程中可以將某些測試跳過,或者對某些預期失敗的case標記成失敗
5.支援重複執行失敗的case
6.支援執行由nose, unittest編寫的測試case
二、pytest的常用命令行選項
1. -s 表示在終端中允許測試執行的時候輸出某些結果,包括任何符合標準輸出資訊
2. -v 輸出的資訊會更加詳細,最明顯的區別就是每個檔案中的每個測試用例都佔一行,測試的名字和結果都會顯示出來,而不僅僅是乙個點或字元
3. -q(--quiet) 該選項的作用與-v的相反,他會簡化輸出資訊,可以和--tb=line(僅列印異常資訊的**位置)搭配使用
4. --tb=style --tb=style選項決定會捕捉到失敗時輸出資訊的顯示方式,
使用--tb=no遮蔽全部回溯資訊
使用--tb=line,它可以告訴我們錯誤的位置
使用--tb=short,顯示的回溯資訊比前面兩種模式的更詳細
5. --collect-only 使用--collect-only選項可以展示在給定的目錄下哪些測試用例會被執行,可以在測試執行之前,檢查選中的測試用例是否符合預期
6. -m 標記(marker)用於標記測試並分組,以便快速選中並執行
8. --maxfail=num -x選項的特點是,一旦遇到測試失敗,就會全域性停止。假設你允許pytest失敗幾次後在停止,則可以使用--maxfail選項,明確指定可以失敗幾次
9. --lf(--last-failed) 當乙個或多個測試失敗時,我們常常希望能夠定位到最後乙個失敗的測試用例重新執行,這時可以使用--lf選項
10. --ff(--failed-first) -ff選項與--last-failed選項的作用基本相同,不同之處在於--ff會執行完剩餘的測試用例
注釋:以上詳情請檢視
三、pytest框架使用規則
1.測試檔案以test_開頭(以_test結尾也可以)
2.測試類以test開頭,並且不能帶有 __init__ 方法
3.測試函式以test_開頭
4.斷言使用基本的assert即可,後接表示式 例子:assert 1 == 1
pytest測試框架 二 fixture介紹
目錄 一 fixture函式的定義 二 fixture函式的呼叫 三 fixture函式的返回 四 conftest.py的使用 五 使用例項 把乙個函式定義為fixture很簡單,只需要在函式宣告之前加上 pytest.fixture 引數如下 fixture scope function par...
測試框架 Pytest框架(一)
目錄 pytest的安裝與執行 安裝 執行執行方式及命令 ide中執行 命令列終端執行 生成報告 報告中的亂碼處理 檢查點 斷言 基於python語言的自動化常用的框架有三種,unittest pytest rf。前兩款更多的用於白盒單元測試,rf可以很好的做系統測試使用。安裝pytest pip ...
Pytest使用介紹
之前做介面自動化測試接觸的都是python unittest requests htmltestrunner,現在公司用的是pytest,趁週末的時間先整體熟悉下 一 概述 pytest是乙個非常成熟的全功能的python測試框架,主要特點有以下幾點 二 安裝 1 安裝 pip install py...