Python接口測試結(jié)果集實(shí)現(xiàn)封裝比較
引言
接口測試執(zhí)行完后,我們需要進(jìn)行斷言,斷言的主要目的是用代碼來判斷實(shí)際結(jié)果和預(yù)期結(jié)果是否一致,這跟手工測試中用肉眼去判斷是一樣的思路。既然這樣,我們可以將已知的預(yù)期結(jié)果和未知的實(shí)際結(jié)果簡單的封裝成一個(gè)類,然后寫一個(gè)比較的函數(shù)來判斷,最后得到結(jié)果。
知識(shí)點(diǎn)預(yù)熱
在講代碼之前,先了解一下python的運(yùn)算符is和==。可能有些人經(jīng)常用,但是卻不知道是什么意思,知其然而不知其所以然。
python對象包括三個(gè)基本要素:id(身份標(biāo)識(shí))、type(數(shù)據(jù)類型)和value(值)。
1、"is" 是身份運(yùn)算符,判斷兩個(gè)對象是否相同,是判斷id是否相同,也就是內(nèi)存地址是否相同。
2、"=="是比較運(yùn)算符,判斷兩個(gè)對象的值是否相同,也就是value。
示例:
# 數(shù)值型
# 字符串
# 元組
# 列表
# 字典
# 集合
結(jié)論:通過上面幾個(gè)例子可以看出,兩個(gè)對象只有int和str的時(shí)候,a is b才為True。而當(dāng)a和b是tuple,list,dict或set型時(shí),a is b為False。
封裝
上面已經(jīng)介紹了如何比較兩個(gè)對象是否相同,那么我們在比較兩個(gè)結(jié)果,實(shí)際結(jié)果和預(yù)期結(jié)果是否相同也可以用這種方法,但是一定要記住是比較value還是內(nèi)存地址?,F(xiàn)在我簡單對判斷測試結(jié)果進(jìn)行封裝,不過這里我用的是包含,當(dāng)然你可以用"=="。
具體代碼:
__author__ = 'Leo' class CompareStr(object): def is_contains(self,str1,str2): """ 判斷預(yù)期結(jié)果與實(shí)際結(jié)果是否相同 :param str1: 預(yù)期結(jié)果 :param str2: 實(shí)際結(jié)果 :return flag: 標(biāo)記 """ self.flag = None if str1 in str2: self.flag = True else: flag = False return self.flag if __name__ == '__main__': cs = CompareStr() print(cs.is_contains('123','123456'))
運(yùn)行結(jié)果:
總結(jié)
以上內(nèi)容是一個(gè)簡單的知識(shí)點(diǎn),簡單進(jìn)行封裝。小知識(shí)點(diǎn)容易被忽略,記一記總是好的。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)銀行管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)銀行管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10Django應(yīng)用程序中如何發(fā)送電子郵件詳解
我們常常會(huì)用到一些發(fā)送郵件的功能,比如有人提交了應(yīng)聘的表單,可以向HR的郵箱發(fā)郵件,這樣,HR不看網(wǎng)站就可以知道有人在網(wǎng)站上提交了應(yīng)聘信息。下面這篇文章就介紹了在Django應(yīng)用程序中如何發(fā)送電子郵件的相關(guān)資料,需要的朋友可以參考借鑒。2017-02-02python實(shí)現(xiàn)輸入三角形邊長自動(dòng)作圖求面積案例
這篇文章主要介紹了python實(shí)現(xiàn)輸入三角形邊長自動(dòng)作圖求面積案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(四):域名系統(tǒng)
當(dāng)我們在上網(wǎng)的時(shí)候,通常輸入的是網(wǎng)址,其實(shí)這就是一個(gè)域名,而我們計(jì)算機(jī)網(wǎng)絡(luò)上的計(jì)算機(jī)彼此之間只能用IP地址才能相互識(shí)別2014-06-06Python中reduce()函數(shù)的語法參數(shù)與作用詳解
這篇文章主要介紹了Python中reduce()函數(shù)的語法參數(shù)與作用詳解,reduce函數(shù)是通過函數(shù)對迭代器對象中的元素進(jìn)行遍歷操作,Python3.x中reduce函數(shù)已經(jīng)從內(nèi)置函數(shù)中取消了,轉(zhuǎn)而放在functools模塊中,需要的朋友可以參考下2023-08-08Python實(shí)現(xiàn)小數(shù)轉(zhuǎn)化為百分?jǐn)?shù)的格式化輸出方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)小數(shù)轉(zhuǎn)化為百分?jǐn)?shù)的格式化輸出方法,結(jié)合具體實(shí)例形式分析了Python實(shí)現(xiàn)小數(shù)轉(zhuǎn)換為百分?jǐn)?shù)輸出的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2017-09-09Python?pytest自動(dòng)化測試庫十個(gè)強(qiáng)大用法示例
本文將介紹Python的pytest庫的10個(gè)強(qiáng)大用法,并提供相應(yīng)的代碼示例,幫助你更好地理解和應(yīng)用單元測試,它提供了許多高級功能和便利的用法,能夠讓我們更輕松地編寫和執(zhí)行單元測試2024-01-01