中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

商丘網站制作電話軟文營銷案例分析

商丘網站制作電話,軟文營銷案例分析,網站制作網站建設運營團隊,seo查詢工具源碼pytest是一種流行的Python測試框架,支持創(chuàng)建簡單的單元測試,也支持創(chuàng)建復雜的功能和集成測試。它提供了一系列有用的功能,能夠方便地編寫,組織和運行測試用例,并生成豐富的測試報告。 pytest的主要特點包括&#xff1…

pytest是一種流行的Python測試框架,支持創(chuàng)建簡單的單元測試,也支持創(chuàng)建復雜的功能和集成測試。它提供了一系列有用的功能,能夠方便地編寫,組織和運行測試用例,并生成豐富的測試報告。

pytest的主要特點包括:

  • 自動發(fā)現測試用例:pytest會自動查找項目中以test_或者以_test結尾的函數或類,并執(zhí)行它們。
  • 參數化測試:pytest允許使用@pytest.mark.parametrize標記來指定多組輸入參數和預期輸出值,以簡化測試用例的編寫和管理。
  • 豐富的斷言方式:pytest支持多種斷言方法,如assert語句、pytest.assert函數、pytest-assume插件以及第三方斷言庫等,可以讓開發(fā)人員更輕松地編寫和維護測試用例。
  • 插件化架構:pytest允許通過插件來擴展其功能,它有很多官方和社區(qū)提供的插件,可以幫助開發(fā)人員處理日志、代碼覆蓋率、性能測試等各種任務。
  • 可與unittestnose無縫對接
  • 豐富的測試報告:pytest會自動生成豐富的測試報告,包括測試用例的執(zhí)行情況、失敗原因、覆蓋狀態(tài)等信息,并支持多種輸出格式,如HTML,JUnit XML等。
    使用pytest編寫和運行測試用例相對于其他測試框架來說更加簡潔和靈活,同時它也是Python社區(qū)中廣泛使用的測試工具之一。

使用標準庫unittest進行單元測試

介紹pytest之前, 先來看一下Python內置的測試庫unittest, unittest是Python 標準庫的一部分,在安裝完Python之后就可以使用, 不需要安裝任何其他模塊。
Python unittest是Python自帶的一個單元測試框架,用于編寫和運行測試用例,以確保代碼的正確性和可靠性。unittest提供了一系列的工具和斷言方法,使得編寫測試用例變得更加簡單和高效。通過使用unittest,開發(fā)人員可以快速運行測試用例并自動化測試過程,從而節(jié)省時間和人力成本。
在Python中,unittest常被用作測試框架,它不僅僅用于單元測試,還可以進行集成測試和功能測試。unittest框架提供了豐富的API、測試控制器以及測試加載器,使得測試用例的編寫和執(zhí)行變得更容易。
使用unittest編寫測試用例的流程如下:

  1. 創(chuàng)建一個測試類,繼承unittest.TestCase類。
  2. 在測試類中編寫測試方法。測試方法必須以test_開頭,用于測試代碼的特定功能。
  3. 在測試方法中使用斷言方法(如assertEqual、assertTrue等)判斷代碼的執(zhí)行結果是否符合預期。
  4. 運行測試用例,并查看測試報告,根據測試結果進行代碼調整和優(yōu)化。

直接上代碼示例:

import unittestdef add(a, b):return a + bclass TestAdd(unittest.TestCase):def test_add(self):self.assertEqual(add(1, 2), 3)if __name__ == '__main__':unittest.main()

一個測試用例是一個完整的單元測試流程,包括測試前的準備環(huán)節(jié)、執(zhí)行測試動作的環(huán)節(jié)、與期望結果的對比的環(huán)節(jié)。在unittest中,測試用例是通過繼承unittest.TestCase類來實現的,這個示例中定義了一個名為 add 的函數,并且使用了 Python 的 unittest 模塊對這個函數進行了測試。

  • TestAdd 類繼承自 unittest.TestCase 類,并包含了一個名為 test_add 的測試方法。
  • 在這個方法中,使用 self.assertEqual 方法來檢查 add 函數是否正確計算了加法。最后,使用 unittest.main() 運行測試。

運行成功的界面如下:

在這里插入圖片描述

如果運行失敗是怎么顯示的呢? 修改上面的 self.assertEqual(add(1, 2), 3) => self.assertEqual(add(1, 2), 4) 讓測試失敗, 失敗的界面如下:
在這里插入圖片描述

安裝 pytest

如果沒有安裝pytest,可以使用pip來安裝:

pip install pytest

如果不確定有沒有安裝pytest, 可以使用 pip list 查看安裝的模塊, 比如:
在這里插入圖片描述

pytest 安裝成功的界面如下:
在這里插入圖片描述

使用 pytest 編寫單元測試

pytest工具會自動找到文件名和函數名都以test開頭的測試用例。

這里定義一個加法函數并對這個函數進行測試, 首先創(chuàng)建一個名為test_sample.py的文件,內容如下:

def add(a, b):return a + bdef test_add():assert add(1, 2) == 3

運行pytest 測試

命令行切換到包含test_sample.py的目錄,運行pytest命令,pytest會運行所有發(fā)現的測試,并產生一個測試報告,運行的效果如下圖:
在這里插入圖片描述

測試失敗情況下,pytest 怎么顯示呢?pytest會詳細地顯示哪個測試失敗,以及失敗的詳細原因。這里故意定義一個執(zhí)行錯誤的函數test_add2(), 代碼如下:

def add(a, b):return a + bdef test_add():assert add(1, 2) == 3def test_add2():    assert add(1, 2) == 4

執(zhí)行后的效果如下圖:
在這里插入圖片描述

除了在命令行控制臺運行和查看pytest的結果外, 也可以在VS Code 的Testing的活動欄,運行和查看結果。效果如下圖:
在這里插入圖片描述

需要注意的是: 點擊Testing的活動欄之后, 需要選擇測試的框架為 pytest。

使用pytest 運行功能測試

pytest是一個非常靈活強大的 Python 測試框架,它既能進行單元測試,也能進行功能測試, 通常與 Flask(輕量級的 Python web 框架)一起使用。
Flask 模塊需要先安裝, 安裝方式是 pip install flask, 安裝完成之后就可以編寫Flask代碼了,
這里定義一個 Flask Web 應用,并且需要測試當訪問/hello時是否能返回 “Hello, World!”, 代碼如下:

from flask import Flaskdef create_app():app = Flask(__name__)@app.route('/hello')def hello():return 'Hello, World!'return appif __name__ == '__main__':app = create_app()app.run()

運行之后通過瀏覽器訪問的效果如下圖:
在這里插入圖片描述

接下來, 使用pytest來進行功能測試,使用Flask的測試客戶端來模擬訪問, 定義測試的文件test_app.py , 內容如下:

import pytest
from app import create_app@pytest.fixture
def client():app = create_app()app.config['TESTING'] = Truewith app.test_client() as client:yield clientdef test_hello(client):response = client.get('/hello')assert response.data == b'Hello, World!'
  • 使用 @pytest.fixture 裝飾器定義了一個名為 client 的測試夾具。該夾具在測試過程中可以作為參數傳遞給測試函數。在這個夾具函數中,創(chuàng)建了一個測試用的 Flask 應用,并將其配置為測試模式。
  • 定義了一個名為 test_hello 的測試函數,并將上述夾具 client 作為參數傳遞進去。在測試函數中,使用 client.get(‘/hello’) 發(fā)起了一個 GET 請求,并檢查返回值是否等于 b’Hello, World!'。如果返回值和預期值不一致,那么測試將會失敗。
  • 在 Python 中,當字符串前面帶有前綴b時,表示這是一個 bytes 類型的字符串,而不是普通的 str 類型。bytes 類型的字符串在 Python 中是一種原生的二進制序列類型,它的每個字符都是一個字節(jié),可以存儲任意的二進制數據。
    在 Flask 應用中,當使用response.data獲取 HTTP 響應的內容時,返回的是 bytes 類型的內容,因為 HTTP 響應的內容是以二進制字節(jié)流的形式傳輸的。因此,在進行 HTTP 響應內容的比較時,需要使用 bytes 類型的字符串,而不是普通的 str 類型字符串。

運行測試的效果如下圖:
在這里插入圖片描述

參考

  • pytest官方站點: https://docs.pytest.org/en/7.4.x/


http://www.risenshineclean.com/news/54435.html

相關文章:

  • 現在給別人做網站還賺錢嗎軟文推廣頁面
  • 營業(yè)執(zhí)照咋做網等網站建一個網站需要多少錢?
  • 自己在網站開發(fā)的客戶怎么聯系企業(yè)網站建設推廣
  • 建筑工程網上辦事大廳seo 技術優(yōu)化
  • php如何網站做修改北京百度快速排名
  • WordPress 主題解密武漢百度seo網站優(yōu)化
  • 南昌網站排名優(yōu)化費用關鍵詞搜索排名軟件
  • 專做定制型網站sem優(yōu)化是什么意思
  • 建設網站需要獨立ip嗎百度客戶服務中心
  • 怎樣注冊個人網站互聯網十大企業(yè)
  • 網站簡介模板在線培訓平臺有哪些
  • seo對網絡推廣的作用是站長工具seo綜合查詢全面解析
  • 安徽國貿集團網站建設企業(yè)文化的重要性
  • 網站建設好處東莞網站推廣優(yōu)化公司
  • 如何做網站推廣網址服務器查詢
  • 網站建設實訓日志想做網絡推廣如何去做
  • 網站正在建設代碼seo專員是做什么的
  • 為了進一步完善網站建設seo搜索方法
  • 廣州php網站建設中國國家培訓網是真的嗎
  • 大連手機自適應網站建設公司優(yōu)化大師官網下載
  • 物聯網系統(tǒng)開發(fā)正版seo搜索引擎
  • wordpress崩了網站優(yōu)化什么意思
  • wordpress 設計沈陽seo代理計費
  • 做網站后臺的時候誤刪了數據庫的表免費大數據查詢
  • 做網站怎么優(yōu)化seo搜索引擎優(yōu)化方案
  • 簡潔大氣的網站模板seo為什么要進行外部優(yōu)化
  • 做充氣氣模產品一般去哪些網站免費關鍵詞搜索工具
  • 做網站第一步要干啥營銷推廣公司
  • 做NBA網站目的今天的新聞 最新消息摘抄
  • 如何用電腦主機做網站網頁自動點擊軟件