Python 接口测试之接口关键字封装
引言
我們使用RF做UI自動(dòng)化測(cè)試的時(shí)候,使用的是關(guān)鍵字驅(qū)動(dòng)。同樣,Python做接口自動(dòng)化測(cè)試的時(shí)候,也可以使用關(guān)鍵字驅(qū)動(dòng)。但是這里并不是叫關(guān)鍵字驅(qū)動(dòng),而是叫數(shù)據(jù)驅(qū)動(dòng)。而接口測(cè)試的關(guān)鍵字是什么呢? 我們數(shù)據(jù)驅(qū)動(dòng)的載體是Excel,那么excel里存放的數(shù)據(jù)是接口測(cè)試用例數(shù)據(jù),一個(gè)接口數(shù)據(jù)里有常量和變量。變量就是一些參數(shù)對(duì)應(yīng)的值,而常量就是接口的:host、path、method和data等等。而這些常量是固定不變的,我們可以將接口測(cè)試用例這些常量封裝到一個(gè)類(lèi)中,每次執(zhí)行測(cè)試的時(shí)候,調(diào)用類(lèi)中某個(gè)方法來(lái)讀取excel中接口關(guān)鍵字對(duì)應(yīng)的值。這些就稱(chēng)之為——關(guān)鍵字?jǐn)?shù)據(jù)。
接口關(guān)鍵字封裝
眾所周知,Excel中第一行字段的值都為固定的值,即常量。可以用這些常量來(lái)定位每一個(gè)測(cè)試用例不同字段的坐標(biāo)值,將獲取到的值傳遞給接口。
首先我們看看接口測(cè)試用例有哪些最主要的關(guān)鍵字常量:
上圖基本上是接口測(cè)試用例關(guān)鍵的字段,當(dāng)然可以根據(jù)自己項(xiàng)目需要自行添加。
我們?cè)谧x取每條測(cè)試用例的時(shí)候,實(shí)際上是讀取每行的數(shù)據(jù),然后可以通過(guò)固定的關(guān)鍵字(列)來(lái)獲取對(duì)應(yīng)的值,最后傳遞給接口方法來(lái)執(zhí)行接口測(cè)試。
封裝如下:
class TestCaseKeyWord(object):
"""
定義測(cè)試用例關(guān)鍵字類(lèi)
"""
CASE_ID = '0'
CASE_NAME = '1'
IS_EXECUTE = '2'
INTERFACE_URL = '3'
METHOD = '4'
HEADER = '5'
REQUEST_DATA = '6'
EXPECTED_RESULT = '7'
ACTUAL_RESULT = '8'
RESULT = '9'
# 獲取用例id
def get_case_id():
return TestCaseKeyWord.CASE_ID
# 獲取用例名稱(chēng)
def get_case_name():
return TestCaseKeyWord.CASE_NAME
# 用例是否執(zhí)行
def get_case_is_execute():
return TestCaseKeyWord.IS_EXECUTE
# 接口url
def get_case_interface_url():
return TestCaseKeyWord.INTERFACE_URL
# 用例方法
def get_case_method():
return TestCaseKeyWord.METHOD
# 請(qǐng)求頭
def get_case_header():
return TestCaseKeyWord.HEADER
# 請(qǐng)求參數(shù)
def get_case_payload():
return TestCaseKeyWord.REQUEST_DATA
# 預(yù)期結(jié)果
def get_case_expected_result():
return TestCaseKeyWord.EXPECTED_RESULT
# 實(shí)際結(jié)果
def get_case_actual_result():
return TestCaseKeyWord.ACTUAL_RESULT
# 用例執(zhí)行結(jié)果
def get_case_result():
return TestCaseKeyWord.RESULT
if __name__ == '__main__':
print(get_case_id())
print(get_case_is_execute())
實(shí)例演示
在excel中添加一條測(cè)試用例:
新建testcase_test.py文件,獲取接口測(cè)試用例名稱(chēng):
from basic_method import testcases_keyword from public.operate_excel import Operate_Excel get_excel = Operate_Excel() # 獲取用例數(shù) print(get_excel.get_sheet_nrows()-1) # 返回用例名稱(chēng)關(guān)鍵字的列值 case_name_col = int(testcases_keyword.get_case_name()) print(case_name_col) # 獲取第一條用例的名稱(chēng) get_name = get_excel.get_sheet_cell(1,case_name_col) print(get_name)
執(zhí)行結(jié)果:
總結(jié)
以上就是針對(duì)接口測(cè)試用例關(guān)鍵字的封裝實(shí)操,常量封裝十分簡(jiǎn)單,關(guān)鍵在測(cè)試方法與思想,更多自動(dòng)化測(cè)試設(shè)計(jì)與想法,可以加入QQ測(cè)試開(kāi)發(fā)交流群:696400122,一起討論討論,不積跬步無(wú)以至千里~
總結(jié)
以上是生活随笔為你收集整理的Python 接口测试之接口关键字封装的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【备忘】XP欢迎页中隐藏用户名
- 下一篇: 转载:如何在 SQL Server 中使