日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

unittest框架(三)unittest+yaml数据驱动

發(fā)布時(shí)間:2025/4/9 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 unittest框架(三)unittest+yaml数据驱动 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

學(xué)習(xí)完了如何用yaml文件管理用例,如何進(jìn)行單元測試,如何產(chǎn)生漂亮的測試報(bào)告,那么結(jié)合這幾點(diǎn),我們簡單學(xué)習(xí)下unittest+yaml數(shù)據(jù)驅(qū)動(dòng)來測試。

第一步:首先,我們建一個(gè)yaml文件,管理用例,以/api/user/login登錄接口為例。

第二步:新建python文件,編寫邏輯代碼

import unittest,requests import ddt from BeautifulReport import BeautifulReport as bf from urllib import parse @ddt.ddt #告訴這個(gè)類要使用ddt了 class Login(unittest.TestCase):base_url = 'http://118.24.3.40/'@ddt.file_data('login.yaml')#ddt幫你讀文件,獲取文件內(nèi)容,循環(huán)調(diào)用函數(shù)def test_request(self,**kwargs):detail = kwargs.get('detail','沒寫用例描述')self._testMethodDoc = detail #動(dòng)態(tài)的用例描述url = kwargs.get('url')#urlurl = parse.urljoin(self.base_url,url)#拼接好urlmethod = kwargs.get('method','get')#請求方式,默認(rèn)是get,以防用戶未在yaml用例里沒寫請求方式data = kwargs.get('data',{}) #請求參數(shù),沒有數(shù)據(jù)的時(shí)候默認(rèn)給一個(gè)空字典header = kwargs.get('header',{})#請求頭cookie = kwargs.get('cookie',{})#cookiecheck = kwargs.get('check')method = method.lower() #便于處理try:if method=='get':res = requests.get(url,params=data,cookies=cookie,headers=header).text#因?yàn)榻涌谟挟惓5那闆r下, 可能返回的不是json串,會(huì)報(bào)錯(cuò),所以將res轉(zhuǎn)為text類型else:res = requests.post(url,data=data,cookies=cookie,headers=header).textexcept Exception as e:print('接口請求出錯(cuò)')res = efor c in check:self.assertIn(c,res,msg='預(yù)計(jì)結(jié)果不符,預(yù)期結(jié)果【%s】,實(shí)際結(jié)果【%s】'%(c,res))sutie = unittest.TestSuite() sutie.addTest(unittest.makeSuite(Login)) run = bf(sutie) run.report('login_test','登錄測試用例') # print(run.success_count) #通過的次數(shù) # print(run.failure_count) #失敗的次數(shù)

?

轉(zhuǎn)載于:https://www.cnblogs.com/mululu/p/9235186.html

總結(jié)

以上是生活随笔為你收集整理的unittest框架(三)unittest+yaml数据驱动的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。