欧美麻豆久久久久久中文_成年免费观看_男人天堂亚洲成人_中国一级片_动漫黄网站免费永久在线观看_国产精品自产av一区二区三区

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 如何用Python編寫REST API的單元測試

如何用Python編寫REST API的單元測試

2020-09-28 18:03:10 | 來源:中培企業IT培訓網

在過去的幾個月中,正在從事一個名為B的項目。它是帶有簡單Web UI的徽章生成器,用于添加數據并生成PDF可打印徽章。B后端現在已轉移到REST-API并測試REST-API中使用的功能,我們需要一些測試技術來測試API中使用的每個功能。為了我們的目的,我們選擇了流行的單元測試 Python測試套件。在此,將討論如何編寫單元測試來測試B REST-API。

首先,讓我們了解什么是單元測試以及為什么選擇它。然后,我們將繼續為B編寫API測試。這些測試具有通用的結構,因此我提到的代碼可以在其他REST API測試方案中正常工作,而無需做任何改動。讓我們開始并逐步了解API測試。

  什么是單元測試?

單元測試是一個Python單元測試框架,它支持測試自動化,共享測試的設置和關閉代碼,將測試聚合到集合中以及使測試脫離報告框架。所述單元測試模塊提供類,可以很容易地支持這些品質為一組測試。

  為什么要進行單元測試?

我們從單元測試中獲得了兩個主要好處,其中大部分價值都體現在第一個方面:

· 指導您的設計松耦合并充實。如果進行測試驅動的開發,它會將您編寫的代碼限制為僅需要的內容,并幫助您逐步開發該代碼。

· 為重構和代碼的少量更改提供快速的自動化回歸。

· 單元測試還為您提供了有關系統的小部分工作原理的實時文檔。

我們應該始終努力編寫涵蓋工作代碼的全面測試。

現在,這是我如何在B的REST-API后端中編寫用于測試代碼的單元測試的一瞥。使用單元測試python包和請求模塊,我們可以在測試自動化中測試REST API。

下面是我在其中一個pull請求中編寫了單元測試的代碼段。

def輸出(response_type,消息,download_link):

如果download_link ==”:

response = [

{

'type':response_type,

'message':message

}

]

else:

response = [

{

'type':response_type,

'message':消息,

“ download_link”:download_link

}

]

返回jsonify({'response':response})

為了測試這個功能,我基本上創建了一個模擬對象,它可以模擬以可控的方式真實對象的行為,所以在這種情況下,模擬對象可以模擬輸出功能和回報行為的東西像一個JSON響應沒有擊中真實REST API。現在,下一個挑戰是解析JSON響應,并將響應JSON的特定值提供給Python自動化腳本。因此,Python將JSON作為字典對象讀取,并且它確實簡化了需要解析和使用JSON的方式。

#!/ usr / bin / env python3

“”“基本功能測試”””

import sys

import json

import unittest

來自app.main import的sys.path.append(“ ../ ..”)*

class TestFunctions(unittest.TestCase):

“”“客戶端方法的測試用例。”””

def setup(self):

app.app.config ['TESTING'] = True

self.app = app.app.test_client()

#測試輸出函數

def test_output(self):

使用app.test_request_context():

#模擬對象

out = output('錯誤','測試錯誤','本地主機')

#傳遞模擬對象

響應= [

{

'類型' :'error',

'message':'Test Error',

'download_link':'local_host'

}

]

數據= json.loads(out.get_data(as_text = True)

#聲明響應

self.assertEqual(data ['response'],response)

如果__name__ =='__main__':

unittest.main()

最后,我們可以通過運行試行測試來驗證一切正常 。

這就是在B項目中存儲庫中編寫單元測試的方式。

上述就是關于如何用Python編寫REST API的單元測試全部內容,想了解更多關于Python的信息,請繼續關注中培偉業。

主站蜘蛛池模板: 亚洲国产精品va在线观看麻豆 | 女人A级毛片19毛水真多 | 欧美国产综合 | 国产成人综合亚洲色就色 | 四虎国产精品成人免费久久 | 激情综合一区二区迷情校园 | 亚洲av永久无码老湿机 | 国产成人午夜福利院 | 久久精品国产亚洲AV麻豆蜜芽 | 亚洲夂夂婷婷色拍WW47 | 日本阿v免费观看视频 | 亲子乱AV一区二区三区 | 波多野结衣在线观看中文字幕 | 男人扒开女人内裤强吻桶进去 | 国产孕妇a片全部精品 | おじさんとわたし中文在线 | 日韩国产精品亚洲а∨天堂免 | 色AV永久无码影院AV | 在线视频网站WWW色 狠狠爱俺也去去就色 | 99ri视频 | a黄色在线观看 | 少妇大叫好爽受不了午夜视频 | 国产又黄又硬又湿又黄的 | きょこんきょうしゃ在线 | 国产成人精品亚洲午夜麻豆 | 中文字幕一区二区三区四区五区六区 | 在线观看亚洲AV每日更新无码 | 一区二区在线影院 | 国产AV剧情MD精品麻豆 | 亚洲AV乱码一区二区三区按摩 | 野花日本大全免费观看中文7 | 亚洲精品视频在线观看视频 | 精品免费一区二区在线 | 国产又粗又大又黄AA片爱豆 | 亚洲日韩精品无码专区加勒比 | 无遮挡AAAAA大片免费看 | 无码AV波多野结衣久久 | 亚洲欧洲久久av | 成人AV综合在线网站 | 小男生自慰gay网站 精品无码国产一区二区三区AV | clubnaked艳裸舞视频 |