• 集成unittest做接口测试


      unittest接口测试

      上篇已经讲了接口测试的做法,利用的是postman工具,工具始终是工具,它有一定的局限性,比如测试数据的存放,断言的方法以及上下接口关联使用灵活性。python对http接口封装了一个requests库可以调用接口,结合unittest单元测试框架可以完美测试。

      简单实例

    import unittest
    import requests
    
    class GetEventListTest(unittest.TestCase):
        """查询发布会接口测试"""
        def setUp(self) -> None:
            self.url = 'http://127.0.0.1:8000/api/get_event_list/'
    
        def test_get_event_null(self):
            """发布会id为空"""
            r = requests.get(self.url,params={'eid':''})
            result = r.json()
            print(result)
            self.assertEqual(result['status'],10021)
            self.assertEqual(result['message'],'参数错误')
    
        def test_get_event_error(self):
            """发布会id不存在"""
            r = requests.get(self.url,params={'eid':'333'})
            result = r.json()
            self.assertEqual(result['status'],10023)
            self.assertEqual(result['message'],'查询对象结果为空')
    
        def test_get_event_success(self):
            """发布会查询成功"""
            r = requests.get(self.url,params={'eid':'1'})
            result = r.json()
            print(result,333)
            self.assertEqual(result['status'],200)
            self.assertEqual(result['message'],'查询成功')
    
    
    
    if __name__ == '__main__':
        unittest.main()
    
      运行结果
    ...
    {'status': 10021, 'message': '参数错误'}
    {'status': 200, 'message': '查询成功', 'data': {'name': '苹果4', 'limit': 10, 'status': True, 'address': '上海浦东', 'start_time': '2020-02-24T00:00:00'}} 333
    ----------------------------------------------------------------------
    Ran 3 tests in 0.025s
    
    OK
    

      

    以上就是集成unittest做接口测试的简单实例。

  • 相关阅读:
    [三、页面布局]10使用List列表在垂直方向显示一系列的内容
    如何确认11.2 RAC Grid Infrastructure的时区
    节后的人才市场开始活跃了?
    最近看中的几款Limitless的家具
    ORA19808错误一例
    Oracle队列锁: Enqueue HW
    解决Oracle错误ORA15061一例
    Maclean Liu的2011年终总结
    全面掌控!打造智慧城市建设的“领导驾驶舱”
    体验SRCNN和FSRCNN两种图像超分网络应用
  • 原文地址:https://www.cnblogs.com/liudinglong/p/12341158.html
Copyright © 2020-2023  润新知