pytest特色與實用插件


pytest特色

1、fixture的特點

  • fixture是pytest特有的功能,其特點如下:

必須用pytest.fixture裝飾器裝飾;fixture有明確的名字,在其他函數(function,默認),模塊(module),類(class)或整個工程(session)調用它時會被激活;

  • function:每個test都運行,默認是function的scope class:每個class的所有test只運行一次
  • class:每個測試類之前執行一次
  • module:每個module的所有test只運行一次
  • session:每個session只運行一次
  • 它自身也可以調用其他的fixture;
  • 可以和測試函數寫在同一個文件里;
  • fixture看做是資源,在你的測試用例執行之前需要去配置這些資源,執行完后需要去釋放資源;
  • fixture還提供了參數化功能,根據配置和不同組件來選擇不同的參數;

2、conftest.py:共享fixture功能

如果在實現測試期間,要使用多個測試文件中的fixture函數,則可以將其移動到conftest.py文件中。 並且,不需要導入要在測試中使用的fixture,它會自動被pytest發現。 fixture功能的發現從測試類開始,然后是測試模塊,然后是conftest.py文件,最后是內置和第三方插件。

 

pytest插件

pytest真的很強大,下面列出其幾點強大之處,方便大家在使用到pytest的時候做參考。

1、pytest-xdist

功能:

開啟多個worker進程,同時執行多個測試用例,達到並發運行的效果,大大提升構建效率。

官網介紹:

https://pypi.org/project/pytest-xdist/

2、pytest-allure-adaptor

功能:

  生成漂亮的allure報告,持續構建推薦使用

官網介紹:

  https://pypi.org/project/pytest-allure-adaptor/

3、pytest-html

功能:

  生成html格式報告,本地調試推薦使用

官網介紹:

https://pypi.org/project/pytest-html/

4、pytest-rerunfailures

功能:

  自動重跑失敗用例

官網介紹:

https://pypi.org/project/pytest-rerunfailures/3.1/

5、pytest-cache

功能:

  重跑上次失敗的用例,持續集成中很實用,提高分析效率,強烈推薦。

官網介紹:

  https://pypi.org/project/pytest-cache/

6、pytest-ordering

功能:

  可指定一個測試套中的所有用例執行順序。

官網介紹:

  https://pypi.org/project/pytest-ordering/

7、pytest-sugar

功能:

  改變了pytest的默認外觀,增加了一個進度條,並立即顯示失敗的測試。

官網介紹:

  https://pypi.org/project/pytest-sugar/
  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM