Python 接口測試之接口關鍵字封裝

  引言

  咱們使用RF作UI自動化測試的時候,使用的是關鍵字驅動。一樣,Python作接口自動化測試的時候,也可使用關鍵字驅動。可是這裏並非叫關鍵字驅動,而是叫數據驅動。而接口測試的關鍵字是什麼呢? 咱們數據驅動的載體是Excel,那麼excel裏存放的數據是接口測試用例數據,一個接口數據裏有常量和變量。變量就是一些參數對應的值,而常量就是接口的:host、path、method和data等等。而這些常量是固定不變的,咱們能夠將接口測試用例這些常量封裝到一個類中,每次執行測試的時候,調用類中某個方法來讀取excel中接口關鍵字對應的值。這些就稱之爲——關鍵字數據。測試

  接口關鍵字封裝

  衆所周知,Excel中第一行字段的值都爲固定的值,即常量。能夠用這些常量來定位每個測試用例不一樣字段的座標值,將獲取到的值傳遞給接口。url

首先咱們看看接口測試用例有哪些最主要的關鍵字常量:spa

 

 

 

上圖基本上是接口測試用例關鍵的字段,固然能夠根據本身項目須要自行添加。設計

咱們在讀取每條測試用例的時候,其實是讀取每行的數據,而後能夠經過固定的關鍵字(列)來獲取對應的值,最後傳遞給接口方法來執行接口測試。excel

封裝以下:blog

class TestCaseKeyWord(object):
    """
    定義測試用例關鍵字類
    """
    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

# 獲取用例名稱
def get_case_name():
    return TestCaseKeyWord.CASE_NAME

# 用例是否執行
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

# 請求頭
def get_case_header():
    return TestCaseKeyWord.HEADER

# 請求參數
def get_case_payload():
    return TestCaseKeyWord.REQUEST_DATA

# 預期結果
def get_case_expected_result():
    return TestCaseKeyWord.EXPECTED_RESULT

# 實際結果
def get_case_actual_result():
    return TestCaseKeyWord.ACTUAL_RESULT

# 用例執行結果
def get_case_result():
    return TestCaseKeyWord.RESULT


if __name__ == '__main__':
    print(get_case_id())
    print(get_case_is_execute())

 

  實例演示

在excel中添加一條測試用例:接口

 

 

 

新建testcase_test.py文件,獲取接口測試用例名稱:開發

from basic_method import testcases_keyword
from public.operate_excel import Operate_Excel
get_excel = Operate_Excel()
# 獲取用例數
print(get_excel.get_sheet_nrows()-1)
# 返回用例名稱關鍵字的列值
case_name_col = int(testcases_keyword.get_case_name())
print(case_name_col)
# 獲取第一條用例的名稱
get_name = get_excel.get_sheet_cell(1,case_name_col)
print(get_name)

  

執行結果:get

 

 

 

  總結

  以上就是針對接口測試用例關鍵字的封裝實操,常量封裝十分簡單,關鍵在測試方法與思想,更多自動化測試設計與想法,能夠加入QQ測試開發交流羣:696400122,一塊兒討論討論,不積跬步無以致千里~自動化

相關文章
相關標籤/搜索