python ddt file_data
2024-10-21 06:03:36
# -*- coding: utf-8 -*-
"""
-------------------------------------------------
File Name: yml_test
Description :
Author : Administrator
date: 2019/6/29 0029
-------------------------------------------------
"""
import ddt, yaml
import unittest, requests
f = open(r'data.yaml', encoding='utf-8')
res = yaml.load(f)
print(type(res))
print(res)
@ddt.ddt
class MyCase(unittest.TestCase):
@ddt.file_data('data.yaml')
@ddt.unpack
def test_run(self, **kwargs):
method = kwargs.get('method')
url = kwargs.get('url')
data = kwargs.get('data', {})
header = kwargs.get('header', {})
is_json = kwargs.get('is_json', 0)
cookie = kwargs.get('cookie', {})
check = kwargs.get('check')
if method == 'post':
if is_json:
r = requests.post(url, json=data, headers=header, cookies=cookie)
else:
r = requests.post(url, data=data, headers=header, cookies=cookie)
else:
r = requests.get(url, params=data, header=header, cookies=cookie)
# self.assertEqual(check.get('error_code'),r.json().get('error_code'))
'''当校验很多的时候,需要用到循环'''
for c in check:
self.assertIn(c, r.text)
@ddt.file_data('baidu.yaml')
@ddt.unpack
def test_run_baidu(self, **kwargs):
method = kwargs.get('method')
url = kwargs.get('url')
check = kwargs.get('check')
if method == "get":
r = requests.get(url)
# self.assertEqual(check.get('error_code'),r.json().get('error_code'))
'''当校验很多的时候,需要用到循环'''
self.assertEqual(check["status_code"],r.status_code)
if __name__ == '__main__':
unittest.main()
最新文章
- windows系统 SVN出现 can't open file‘\XXX\txn-current-lock’ 拒绝访问 问题处理
- PHP 格中方法
- C++中为什么构造函数不能是虚函数,析构函数是虚函数
- 屏幕分辨率与FPS
- 关于java实现同步的方法
- sgu 109 Magic of David Copperfield II
- mapreduce 关于小文件导致任务缓慢的问题
- 【Android进阶】关于PagerAdapter的使用方法的总结
- C#基础知识 简单说明泛型的优点
- [SPOJ 4155]OTOCI
- mac 使用指南
- script标签
- Dart 语言简易教程系列
- Cookie:解决HTTP协议无保存状态
- ERR_UNSAFE_PORT
- php回溯
- java android 读写三菱PLC 使用TCP/IP 协议
- 开关WI-Fi显示列表
- 一道java笔试题
- git rm -r --cached 去掉已经托管在git上的文件
热门文章
- 【转载】EXCEL VBA Workbook、Worksheet、Range的选择和操作
- 数据库日志——binlog、redo log、undo log扫盲
- 终端安装python3使用如下指令
- 移动端安卓开发学习记录--Android Studio使用adb链接夜神模拟器常用指令
- 电脑微信小程序抓包
- FAQ 关于allure和pycharm的运行模式
- 艰难的 debug 经历,vscode 无法获取远程环境 ssh 报错,windows 11 ssh
- 重学SpringBoot. step6 SpringBoot高级技巧
- 重学SpringBoot. step2 Spring AOP
- 限流器算法实现(JUC原子类使用实践)