歡迎您光臨本站 註冊首頁

Python接口測試結果集實現封裝比較

←手機掃碼閱讀     lousu-xi @ 2020-05-01 , reply:0

引言

接口測試執行完後,我們需要進行斷言,斷言的主要目的是用代碼來判斷實際結果和預期結果是否一致,這跟手工測試中用肉眼去判斷是一樣的思路。既然這樣,我們可以將已知的預期結果和未知的實際結果簡單的封裝成一個類,然後寫一個比較的函數來判斷,最後得到結果。

知識點預熱

在講代碼之前,先了解一下python的運算符is和==。可能有些人經常用,但是卻不知道是什麼意思,知其然而不知其所以然。

python對象包括三個基本要素:id(身份標識)、type(數據類型)和value(值)。

1、"is" 是身份運算符,判斷兩個對象是否相同,是判斷id是否相同,也就是內存地址是否相同。

2、"=="是比較運算符,判斷兩個對象的值是否相同,也就是value。

示例:

# 數值型

# 字符串

# 元組

# 列表

# 字典

# 集合

結論:通過上面幾個例子可以看出,兩個對象只有int和str的時候,a is b才為True。而當a和b是tuple,list,dict或set型時,a is b為False。

封裝

上面已經介紹瞭如何比較兩個對象是否相同,那麼我們在比較兩個結果,實際結果和預期結果是否相同也可以用這種方法,但是一定要記住是比較value還是內存地址。現在我簡單對判斷測試結果進行封裝,不過這裡我用的是包含,當然你可以用"=="。

具體代碼:

__author__ = 'Leo' class CompareStr(object): def is_contains(self,str1,str2): """ 判斷預期結果與實際結果是否相同 :param str1: 預期結果 :param str2: 實際結果 :return flag: 標記 """ 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'))



總結:以上內容是一個簡單的知識點,簡單進行封裝。小知識點容易被忽略,記一記總是好的。


[lousu-xi ] Python接口測試結果集實現封裝比較已經有263次圍觀

http://coctec.com/docs/python/shhow-post-232431.html