Pytest系列(一)初次瞭解

在之前,我分享過unittest系列,後來有很多人問我,能不能出pytest的教程,正好最近在整理pytest相關的資料,那麼,就趁着這個機會,去和大家分享一下pytest系列。

 pytest是一個非常成熟的全功能的Python測試框架。那麼他有什麼優點呢。

pytest優點
入門簡單,文檔豐富
支持單元測試,功能測試
支持參數化,重複執行,部分執行,測試跳過
兼容其他測試框架(nose,unittest 等)
支持生成html報告
可集成CI環境(Jenkins 等)
第三方插件豐富,良好的自定義擴展性

   那麼我們對比下它與unittest。

(1)unittest
測試文件必須先 import unittest
測試類必須繼承unittest.TestCase
測試方法必須以“test_”開頭
測試類必須要有unittest.main()方法
unittest只有setup/teardown裝載測試用例
(2)pytest
測試文件名必須以“test_”開頭
測試類以Test開頭,並且不能帶有 init 方法
測試方法必須以“test_”開頭
除了有setup/teardown,還能更自由的定義fixture裝載測試用例

  那麼我們看下它支持的python

Python支持版本: Python 2.6,2.7,3.3+支持的平臺: Unix/mac and WindowsPyPI包名: pytest

          如何安裝,很簡單

pip install -U pytest

        安裝完畢後

 

 

 我們可以在安裝的時候,看到它的版本,也可以使用

 

pytest --version

  查看版本

 

 

如何快速寫一個pytest用例呢,很簡單

def add(a:int,b:int):
    return a+b
def test_answer():
    assert add(3,4) == 7

    執行下

pytest py_test_one.py

  結果如下

 

 

用例執行通過,如果用例失敗呢?

def add(a:int,b:int):
    return a+b
def test_answer():
    assert add(3,4) == 8

 

 

  測試失敗輸出

 

 

  一個簡單的小的入門的demo就完成了。

文章首發在公衆號上,歡迎關注

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章