接口自动化测试用例编写

一、输出接口自动化测试框架处理流程

接口测试框架: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()

 

你可能感兴趣的:(接口测试)