国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python自動化測試框架pytest的詳解安裝與運行

Python自動化測試框架pytest的詳解安裝與運行

2022-01-20 00:35愛測試的高胖胖 Python

這篇文章主要為大家介紹了Python自動化測試框架pytest的簡介以及安裝與運行,有需要的朋友可以借鑒參考下希望能夠有所幫助,祝大家多多進步

1. pytest的介紹

pytest是一個非常成熟的全功能的python測試工具,它主要有以下特征:

簡單靈活,容易上手;

支持簡單的單元測試和復雜的功能測試

顯示詳細的斷言失敗信息

能自動識別測試模塊和測試功能

有測試會話、測試模塊、測試類、測試函數級別的fixture

可用于selenium/Appium等自動化測試和接口自動化測試(pytest+requests);

擁有豐富的第三方插件,還可自定義擴展;

可與持續集成工具進行很好的集成,如:Jenkins。

 

2. pytest的安裝

1. 使用以下命令進行安裝

pip install -U pytest

參數說明:
-U: 將指定的軟件包升級至當前最新的可用版本
其他說明:
官網安裝說明有加上-U參數,不加上-U參數亦可

2. 檢查是否成功安裝正確版本

$ pytest --version
pytest 6.2.4

 

3. pytest識別測試的條件

1.若無指定參數,pytest會從testpath(如果配置)或當前目錄下遞歸查找與 norecursedirs不匹配的目錄。

2.查找目錄中所有符合test_*.py*_test.py的文件

3.從匹配到的測試文件中,搜集滿足以下條件的測試用例:

  • 在類之外的所有test_*方法
  • Test*類中包含的所有test_*方法(Test*類中不能含有__init__()方法)

 

4. pytest的運行

pytest的運行分為以下方式:

1. Pycharm中進行調用
2. Python代碼中調用
3. 使用命令行進行調用

4.1 Pycharm中調用

Pycharm中默認的test runner是Unittest,無法識別使用pytest編寫的測試文件和測試用例

Python自動化測試框架pytest的詳解安裝與運行

Python自動化測試框架pytest的詳解安裝與運行

進入Preferences-->Tools-->Python Integrted Tools,

修改Testing下的Default test runner,改成pytest后,

則可以直接使用Pycharm中的Run按鈕無參數的調用pytest。

Python自動化測試框架pytest的詳解安裝與運行

Python自動化測試框架pytest的詳解安裝與運行

4.2 Python代碼中調用

在代碼中添加入口函數―pytest.main(),即可在Python代碼中調用pytest。

pytest.main()的參數:

Python自動化測試框架pytest的詳解安裝與運行

1. args:命令行指令列表集

示例代碼sample1:

import pytest
class TestDemo:
  def test_demo1(self):
  	print("test_demo1")    
  def test_demo2(self):
  	print("test_demo2")
  if  __name__=='__main__':
   pytest.main(['test_sample.py::TestDemo::test_demo1','-v'])

pytest.main(['test_sample.py::test_demo1','-v'])的參數說明:

''test_sample.py::TestDemo::test_demo1'':表示運行test_sample.py中的TestDemo類里面名為test_demo1的測試方式

-v:表示打印詳細運行日志信息

運行結果:

Python自動化測試框架pytest的詳解安裝與運行

2. plugins:在初始化過程中可自動注冊的插件對象列表

示例代碼sample2:

import pytest
import sys
class TestDemo:
  def test_demo1(self):
      print("test_demo1")
  def test_demo2(self):
      print("test_demo2")

class MyPlugin:
  def pytest_sessionfinish(self):
      print("*** test run reporting finishing")
if __name__ == '__main__':
  sys.exit(pytest.main(['-v','test_sample.py::TestDemo::test_demo1'], plugins=[MyPlugin()]))

pytest.main(['-v','test_sample.py::TestDemo::test_demo1'], plugins=[MyPlugin()])參數說明:

plugins=[MyPlugin()])):傳入自定義的MyPlugin()函數

運行結果:

Python自動化測試框架pytest的詳解安裝與運行

4.3 使用命令行調用

1. 使用python調用
當代碼中我們添加入口函數后,可以使用python來調用pytest。
以sample2的代碼為例,在終端輸入一下命令:

python test_sample.py 

運行結果:

Python自動化測試框架pytest的詳解安裝與運行

2. 使用pytest調用

常用參數列表

以下列舉了一些常用的pytest的執行參數,其他參數可使用pytest --help查看。

參數 說明
pytest 目錄路徑 運行指定目錄下可收集到的測試,為空則默認執行當前目錄下收集到的測試
pytest 文件名.py 執行單獨一個pytest模塊
pytest 文件名.py::類名 運行某個模塊中的某個類
pytest 文件名.py::類名::方法名 運行某個模塊中的某個類的某個方法
pytest -v 打印詳細運行日志信息
pytest -v -s 文件名.py 帶控制臺輸出結果,也輸出運行詳細日志信息
pytest -x 文件名.py 一旦運行到報錯,就停止運行
pytest -k "類名 and not 方法名" 執行某個關鍵字的用例
pytest -m [標記名] @pytest.mark.[標記名]將運行這個標記的測試用例
pytest Cmaxfail=[num] 當運行錯誤到達num時候就停止運行
pytest Ccolection-only 只收集測試用例
pytest Cjunitxml=./result.xml 生成執行結果文件
pytest Csetup-show 回溯fixture的執行過程

參數演示示例:

demo目錄如下

Python自動化測試框架pytest的詳解安裝與運行

1.pytest目錄路徑:運行指定目錄下可收集到的測試

Python自動化測試框架pytest的詳解安裝與運行

2.pytest文件名.py:執行單獨一個pytest模塊

Python自動化測試框架pytest的詳解安裝與運行

3.pytest 文件名.py::類名:運行某個模塊中的某個類

Python自動化測試框架pytest的詳解安裝與運行

4.pytest 文件名.py::類名::方法名:運行某個模塊中的某個類的某個方法

Python自動化測試框架pytest的詳解安裝與運行

5.pytest -v: 打印詳細運行日志信息

Python自動化測試框架pytest的詳解安裝與運行

6.pytest -v -s 文件名.py:帶控制臺輸出結果,也輸出運行詳細日志信息

Python自動化測試框架pytest的詳解安裝與運行

7.pytest -x 文件名.py:一旦運行到報錯,就停止運行

Python自動化測試框架pytest的詳解安裝與運行

8.pytest -k "類名 and not 方法名":執行某個關鍵字的用例

注意:示例中,測試用例名稱中包含“test_c”和“test_d”的都會被執行

Python自動化測試框架pytest的詳解安裝與運行

9.pytest -m [標記名]:@pytest.mark.[標記名]將運行這個標記的測試用例

對兩個測試方法進行@pytest.mark.[標記]的標記。

Python自動化測試框架pytest的詳解安裝與運行

運行結果:

只運行了被標記的兩個測試方法。

Python自動化測試框架pytest的詳解安裝與運行

10. pytest --maxfail=[num]:當運行錯誤到達num時候就停止運行

對代碼進行修改,模擬兩條運行失敗測試用例。

Python自動化測試框架pytest的詳解安裝與運行

運行結果:

Python自動化測試框架pytest的詳解安裝與運行

11. pytest --colection-only:只收集測試用例

Python自動化測試框架pytest的詳解安裝與運行

12. pytest --junitxml=./result.xml:生成執行結果文件

Python自動化測試框架pytest的詳解安裝與運行

執行結束后,對應目錄下會生成一個結果文件。

Python自動化測試框架pytest的詳解安裝與運行

13.pytest --setup-show:回溯fixture的執行過程

對原有代碼進行修改。新增一個fixture修飾的函數,并對test_demo1測試方法進行修改。

Python自動化測試框架pytest的詳解安裝與運行

運行結果:

Python自動化測試框架pytest的詳解安裝與運行

文末說明:
以上內容是我在閱讀pytest官方文檔后,依照個人理解進行整理。內容可能會有理解錯誤之處,歡迎大家留言指正。謝謝!

以上就是Python自動化測試框架pytest介紹安裝與運行的詳細內容,更多關于Python自動化測試框架pytest的資料請關注服務器之家其它相關文章!

原文鏈接:https://blog.csdn.net/gjj920318/article/details/118515792

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: www.午夜| 国产精品欧美一区二区三区 | 日韩亚洲一区二区 | 91免费版在线看 | 91亚洲精品一区 | av大片网 | 国产伦乱 | 欧美精品一二三区 | 国产精品久久久久久婷婷天堂 | 久久最新 | 国内外成人激情免费视频 | 狠狠操狠狠操 | 人妖天堂狠狠ts人妖天堂狠狠 | 中文字幕天堂在线 | 欧美 日韩 精品 | 精品中文字幕一区二区 | 亚洲成人在线观看视频 | 欧美在线亚洲 | 亚洲免费观看视频 | 一区二区三区在线免费观看 | 三级无遮挡污在线观看 | 一区二区三区中文字幕 | 午夜在线电影 | 亚洲一区二区三区在线播放 | 日韩欧美一二三区 | 亚洲一区自拍偷拍 | 99热在线播放 | 九色在线 | 一道本一区二区三区 | 午夜色电影 | 亚洲三区在线观看 | 可以免费在线观看av的网站 | 99精品欧美一区二区蜜桃免费 | 视频一二区 | 自拍偷拍欧美 | 欧美激情国产日韩精品一区18 | 精品国精品国产自在久不卡 | 国产精品久久久久久久久久久新郎 | 亚洲国产精品久久久久婷婷老年 | 中文字幕一二三区 | 亚洲成人精品一区 |