接口自動化測試用例編寫

一、輸出接口自動化測試框架處理流程

接口測試框架:unittest用例的組織、初始化數據、HTMLTestRunner生成測試報告;

流程如下:

1、準備測試數據:接口測試框架先向測試數據庫中插入測試數據(如Tom的個人信息);

2、接口調用:調用被測系統所提供的的接口(傳參username='Tom');

3、數據處理:系統接口根據傳參(username='Tom)調用接口進行處理;

4、數據返回:將結果組裝成一定格式的數據,並返回給測試框架;

5、斷言生成測試報告:通過單元測試框架斷言接口返回的數據,並生成測試報告。

 二、舉例

import requests
import unittest

class GetEventListTest(unittest.TestCase):

    def setUp(self):
        self.base_url = "http://127.0.0.1:8000/api/get_event_list/"

    def test_get_event_list_eid_null(self):
        ''' eid 參數爲空 '''
        r = requests.get(self.base_url, params={'eid':''})
        result = r.json()
        self.assertEqual(result['status'], 10021)
        self.assertEqual(result['message'], 'parameter error')

    def test_get_event_list_eid_error(self):
        ''' eid=901 查詢結果爲空 '''
        r = requests.get(self.base_url, params={'eid':901})
        result = r.json()
        self.assertEqual(result['status'], 10022)
        self.assertEqual(result['message'], 'query result is empty')

    def test_get_event_list_eid_success(self):
        ''' 根據 eid 查詢結果成功 '''
        r = requests.get(self.base_url, params={'eid':1})
        result = r.json()
        self.assertEqual(result['status'], 200)
        self.assertEqual(result['message'], 'success')
        self.assertEqual(result['data']['name'],u'mx6發佈會')
        self.assertEqual(result['data']['address'],u'北京國家會議中心')


if __name__ == '__main__':
    unittest.main()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章