日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

post 返回代码_减少冗长代码,利用DDT轻松分离测试数据

發布時間:2025/3/19 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 post 返回代码_减少冗长代码,利用DDT轻松分离测试数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
戳上面的藍字關注,助你成金

01

前言

我們在進行接口測試時,大多數時候都是針對接口的參數設計用例進行測試,而相應的測試步驟基本相同(調用接口,檢查返回碼,檢查返回數據)。這種場景非常適合使用數據驅動的測試。數據驅動測試的理念是將測試數據和測試步驟分離開,使得測試代碼更加簡潔,增加測試數據就能增加測試用例,這樣使得測試更加方便快捷。現本文主要介紹Python中的DDT框架。

02

場景

假設現在有一個待測接口為創建用戶:CreateUser,創建用戶的參數信息如下:

針對這個說明可以設計幾個測試用例如下(包括但不限于):

假設接口的授權調用已經在MyRequst中實現,則調用測試接口的步驟大致如下:

import MyRequstpara={"username":?"ab",?"phone":?"3800000000"}ret = MyRequst.post(para)assert ret.status_code == 200assert ret.msg == None

03

DDT的具體實踐

如果不使用數據驅動測試,我們的測試可能會按如下這種模式寫:

import?unittestimport?MyRequstclass?TestCreateUser(unittest.TestCase):?def?test1(self):?para={"username":?"ab",?"phone":?"3800000000"?}?ret = MyRequst.post(para)?assert?ret.status_code ==?400?assert?ret.msg ==?"username is invalid"?def?test2(self):?para={"username":?"abc",?"phone":?"3800000001"?}?ret = MyRequst.post(para)?assert?ret.status_code ==?200?assert?ret.msg ==?None

可見測試代碼太冗長,如果想增加新的測試用例,代碼還會越來越長。而使用DDT可以將測試數據分離出去,代碼如下:

import?unittestfrom?ddt?import?ddt, data, file_data, unpackimport?MyRequst@ddtclass?TestCreateUser(unittest.TestCase):?#使用外部文件作為測試數據?@file_data('data/test_data_dict_dict.json')?def?test(self, username, phone, email, sex, code, msg):?para={"username": username,?"phone": phone,?"email": email,?"sex": sex? ?? ?? ?}?ret = MyRequst.post(para)?assert?ret.status_code == code?assert?ret.msg == msg

而其中test_data_dict_dict.json文件中保存測試數據:

{?"1":{?"username":"ab",?"phone":"3800000000",?"email":None,"sex": None,?"code":?400,?"msg":"username is invalid"?},?"2":{"username":"abc",?"phone":"3800000001",?"email":None,?"sex": None,?"code":?200,?"msg":None?}}

增加測試用例只需要在測試數據文件中增加相應dict即可,無需要改動測試代碼,這樣非常便于管理,測試步驟和測試用例都非常清晰明了。

如果不想使用外部文件,DDT還提供了在data方法可以在測試用例文件中使用元祖列表等傳入測試數據,具體用法可參考官方文檔。

通知

尚腦軟件測試培訓火熱進行中

有想報名進行試聽的同學可以

關注公眾號

咨詢微信(15718818708)

咨詢微信(17601613679)

進行了解哦!

長按關注“北京尚腦軟件測試”助你成金

總結

以上是生活随笔為你收集整理的post 返回代码_减少冗长代码,利用DDT轻松分离测试数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。