1、通过全局变量存放用例数据

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : GetData.pyclass GetData:Cookie = None
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : http_request.py
import requestsclass HttpRequest:def http_request(self, url, data, method):result = Noneif method.lower() == 'post':result = requests.request("POST", url, data=data)elif method.lower() == 'get':result = requests.request("GET", url, data=data)else:print("错误")return result
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : test_http.py
import unittestfrom test_excel_case import GetData
from test_excel_case.http_request import HttpRequestclass TestHttp(unittest.TestCase):def setUp(self):self.login_url = "https://xxxx.com/xxxxi/login"def __init__(self, methodName, url, data, method, expected): #通过初始化函数传参super(TestHttp, self).__init__(methodName)  # 父类的方法保留了self.url = urlself.data = dataself.method = methodself.expected = expecteddef test_api(self):  #接口用例res = HttpRequest().http_request(self.url, self.data, self.method)if res.cookies:#如果cookie有的话,那么就更新cookiesetattr(GetData,'Cookie',res.cookies) #反射try:self.assertEqual(self.expected,res.json()['code'])except AssertionError as e:print("test_api's error is {}".format(e))raise eprint(res)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : test_suite.py
import HTMLTestRunner
import unittestfrom test_excel_case.test_http import TestHttptest_data = [{"url": "https://xxxx.com/xxxxi/login","data": {"username": "testlxm", "password": "testlxm"}, "expected": 1000, "method": "post"},{"url": "https://xxxx.com/xxxxi/login","data": {"username": "testlxm", "password": "123456"}, "expected": 1000, "method": "post"}]suite = unittest.TestSuite()for item in test_data: #创建用例suite.addTest(TestHttp('test_api', test_data[0]['url'], test_data[0]['data'], test_data[0]['method'],test_data[0]['expected']))with open("test_summer.html","wb") as file:testrunner = HTMLTestRunner.HTMLTestRunner(stream=file, verbosity=2, title=None, description=None)testrunner.run(suite)
#正常登录后,返回的数据
{"code" : 1000,"msg" : "OK","data" : {"guid" : "def8b5a9c4d4354a6a4618","token" : "3242ac20-55c5-40fb-9ec3-62143b5cea52","loginId" : "testlxm","username" : "testlxm","sex" : "1","email" : "testlxm@xx.com.cn","mobile" : "15621252325","isAdmin" : null,"tenantId" : "tenant_system","tenantName" : "租户","redirectUrl" : null,"isButton" : [ ],"icon" : "/imagepool/2019-04-03/6664088899.png","roleId" : "4"}
}

python批量读取用例的方法相关推荐

  1. 自动化神器啊,Python 批量读取身份证信息写入 Excel

    大家好,今天分享一个实用技能,利用 Python 批量读取身份证信息写入 Excel. 喜欢记得收藏.关注.点赞. 注:文末提供完整版代码.技术交流方式 读取 以图片形式的身份证为例,信息读取我们使用 ...

  2. 我用Python批量读取考生成绩单,并自动发送录取通知书邮件

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 欢笑情如旧,萧疏鬓已斑. 01 前 ...

  3. python 批量读取csv_python批量读取csv文件

    请问大神怎样用python批量读取文件夹下的文件? python如何读取CSV文件一部分数据 Python如何批量读取CSV文件并写入TXT? 如何用python把多个csv文件数据处理后汇总到新cs ...

  4. python账单查询软件_利用Python批量识别电子账单数据的方法

    这篇文章主要介绍了利用Python批量识别电子账单数据的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 一.前言 有一定数量类似如下截图所示的账单,利用 ...

  5. json字段顺序读取 python_如何利用Python批量读取视频文件的时间长度?

    本期的主题是利用Python来实现对视频文件时间长度的读取. 在学习编程语言时,相比较于通过书本来学习知识,我更喜欢通过观看学习视频的方式来进行学习,通过主讲老师的讲解,我能很直观且快速的了解一些知识 ...

  6. python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  7. python读取文件多行内容-Python逐行读取文件内容的方法总结

    Python四种逐行读取文件内容的方法 下面四种Python逐行读取文件内容的方法, 分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过, python2中运行部分代码已注释,稍加修 ...

  8. python批量读取图片gps位置_某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置!...

    原标题:某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置! 1. python读取图片exif属性中的GPS信息 智能手机或平板如果在拍照时开启定位服务,照片中就会记录拍照位置信息和 ...

  9. python批量读取csv文件-使用Python读写csv文件的三种方法

    行之间无空行十分重要,如果有空行或者数据集中行末有空格,读取数据时一般会出错,引发[list index out of range]错误.PS:已经被这个错误坑过很多次! 使用python I/O写入 ...

最新文章

  1. 此blog已经迁移~~~
  2. 深入理解javascript原型和闭包(13)-【作用域】和【上下文环境】
  3. 一个详细的JTable使用例子
  4. PyTorch基础(part2)
  5. strictmath_Java StrictMath ulp()方法与示例
  6. 面试官系统精讲Java源码及大厂真题 - 15 CopyOnWriteArrayList 源码解析和设计思路
  7. 根据递归定义的数据表循环生成xml
  8. redhat 中安装rpm包时遇到异常 “error: Failed dependencies:xinetd is needed by .”
  9. mysql中什么是dml语句_mysql---DML语句
  10. customErrors与错误页面
  11. 阶段3 1.Mybatis_10.JNDI扩展知识_1 补充-JNDI概述和原理
  12. go项目实战 <微信公众号后台开发>(一、获取token)
  13. 苹果id登录_LOL手游公测!苹果/安卓下载登录详细教程
  14. 天池大数据竞赛——UI特征统计
  15. Javascript运行环境
  16. django -- url映射
  17. 髂嵴最高点在哪里_两侧髂嵴最高点连线约平 ( )
  18. 电子烟中测电阻注意事项
  19. Linux操作系统 第六章
  20. win10 / linux计划任务

热门文章

  1. java运用ascii实现动画效果_安卓开发20:动画之Animation 详细使用-主要通过java代码实现动画效果...
  2. 14日晚8点直播丨 经典知识库:性能优化那些事
  3. 索引扫描时,对同一个叶子块访问多次的原因初探
  4. PMOS 和 NMOS区别
  5. 教你从零搭建Web漏洞靶场OWASP Benchmark
  6. AI实战分享 | 基于CANN的辅助驾驶应用案例
  7. Python入门:ChainMap 有效管理多个上下文
  8. MySQL 数据库救火:磁盘爆满了,怎么办?
  9. 扎根CNCF社区贡献五年是怎样的体验?听听华为云原生开源团队的负责人怎么说
  10. 实战案例丨使用云连接CC和数据复制服务DRS实现跨区域RDS迁移和数据同步