unittest接口测试

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

  简单实例

  1. import unittest
  2. import requests
  3.  
  4. class GetEventListTest(unittest.TestCase):
  5. """查询发布会接口测试"""
  6. def setUp(self) -> None:
  7. self.url = 'http://127.0.0.1:8000/api/get_event_list/'
  8.  
  9. def test_get_event_null(self):
  10. """发布会id为空"""
  11. r = requests.get(self.url,params={'eid':''})
  12. result = r.json()
  13. print(result)
  14. self.assertEqual(result['status'],10021)
  15. self.assertEqual(result['message'],'参数错误')
  16.  
  17. def test_get_event_error(self):
  18. """发布会id不存在"""
  19. r = requests.get(self.url,params={'eid':'333'})
  20. result = r.json()
  21. self.assertEqual(result['status'],10023)
  22. self.assertEqual(result['message'],'查询对象结果为空')
  23.  
  24. def test_get_event_success(self):
  25. """发布会查询成功"""
  26. r = requests.get(self.url,params={'eid':'1'})
  27. result = r.json()
  28. print(result,333)
  29. self.assertEqual(result['status'],200)
  30. self.assertEqual(result['message'],'查询成功')
  31.  
  32. if __name__ == '__main__':
  33. unittest.main()
  运行结果
  1. ...
  2. {'status': 10021, 'message': '参数错误'}
  3. {'status': 200, 'message': '查询成功', 'data': {'name': '苹果4', 'limit': 10, 'status': True, 'address': '上海浦东', 'start_time': '2020-02-24T00:00:00'}} 333
  4. ----------------------------------------------------------------------
  5. Ran 3 tests in 0.025s
  6.  
  7. OK

  

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

集成unittest做接口测试的更多相关文章

  1. postman+jenkins+newman做接口测试的持续集成

    为何要做接口自动化测试的持续集成? 1. 接口相对稳定,改动少,比起GUI自动化测试来说性价比更加高些,不容易出现GUI自动化那种掉到维护脚本的坑里. 2. 接口测试比较简单,一个规范的接口,测试只需 ...

  2. python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)

    简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试. 什么是接口测试 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统 ...

  3. 使用Robot Framework做接口测试

    http://chuansong.me/n/1858477 1.RF框架 1.1 RF框架介绍Robot Framework 框架是一个通用的测试框架,一直是由诺西网络(Nokia Siemens N ...

  4. 使用postman做接口测试(一)

    参考大神的总结:https://www.cnblogs.com/Skyyj/p/6856728.html 一,先了解一下基础知识,虽然工作中没什么卵用,但背会了,可以显摆自己很专业的样子,以下内容来自 ...

  5. 如何用Jmeter做接口测试

    Jmeter介绍&测试准备: Jmeter介绍:Jmeter是软件行业里面比较常用的接口.性能测试工具,下面介绍下如何用Jmeter做接口测试以及如何用它连接MySQL数据库. 前期准备:测试 ...

  6. 在实际工作中使用requests+unittest进行接口测试

    之前学习python做接口测试时,用的时requests+excel的方式来进行接口测试,后来在工作中也用unittest来做了一个项目的接口测试,接口测试用例完全基于unittest来编写,把大致步 ...

  7. Jsoup做接口测试

    最早用Jsoup是有一个小的爬虫应用要写,发现Jsoup较HttpClient轻便多了,API也方便易懂,上手很快,对于response的Document解析的选择器用的是cssSelector(Jq ...

  8. jmeter做接口测试

    jmeter做接口测试有两种方式: 1. 2.

  9. Spring集成shiro做登陆认证

    一.背景 其实很早的时候,就在项目中有使用到shiro做登陆认证,直到今天才又想起来这茬,自己抽空搭了一个spring+springmvc+mybatis和shiro进行集成的种子项目,当然里面还有很 ...

随机推荐

  1. TC SRM556 OldBridges

    题意 有一个包含\(n\)个点的图,点的编号分别为\(0\)到\(n-1\).有若干双向边连接两个点,有些边可以经过无限次,有些边最多只能经过(双向)两次.Alice计划从\(a1\)到\(a2\)进 ...

  2. 吴裕雄--天生自然 python数据分析:医疗费数据分析

    import numpy as np import pandas as pd import os import matplotlib.pyplot as pl import seaborn as sn ...

  3. Vue中echarts的使用

    1.安装 npm install echarts --save 2. 导入并挂载 <template>   <!-- 1. 为ECharts准备一个具备大小(宽高)的Dom --&g ...

  4. HTTP Error 502.5 - ANCM Out-Of-Process Startup Failure

    问题: 原因:一般来说是由于.NET Core SDK的版本引起的,此时需要观察项目的所需的版本和本地存在的板本是否一致. 本例中,项目所需的版本是2.2如下图所示 本地存在的版本如下图所示,是不存在 ...

  5. H5_0024:对于事先无法确定css大小的情况,可以通过JS动态修改

            $(function(){             function Heights(){                 var WinH = $(window).height(); ...

  6. Pikachu-Unsafe Filedownload(不安全的文件下载)

    不安全的文件下载概述 文件下载功能在很多web系统上都会出现,一般我们当点击下载链接,便会向后台发送一个下载请求,一般这个请求会包含一个需要下载的文件名称,后台在收到请求后 会开始执行下载代码,将该文 ...

  7. JavaScript DOM–事件操作

    事件 注册事件 给元素添加事件,为注册事件或者绑定事件 注册事件两种方式 传统方式 监听事件方式 事件监听 addEventListener() 事件监听 (IE9以上) eventTarget.ad ...

  8. cf1282c

    题意描述: 给你一颗带权无根树,共有2*n个节点,有n对人,然后每一个人被分配到一个节点上 问题1:怎么安排使得这n对人之间距离之和最小 问题2:怎么安排使得这n对人之间距离之和最大 题解:直接去想具 ...

  9. element-ui 1.4.13

    Form 表单 rules 表单校验函数需要访问实例中的属性时应该把校验规则写为computed,校验函数写入methods <el-form-item prop="taxableIn ...

  10. 转: OSIP协议栈使用入门

    转自百度文库 很长时间之前,简单粗略地看了下Osip,eXosip,ortp等并快速“封装”了一个Windows下的基于VC6的MFC的SIP软电话(全部源代码VC6工程文件及Lib库可在本Blog共 ...