unittest管理接口用例(数据分离-读取excel)
1.简单读取
#coding=utf-8
#调用封装好的excel读取公共方法
from python_API.common.ReadExcel import ReadExcel
import requests
import json
#获取excel中的url
url = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,1)
#获取excel中的请求方式
Method = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,2)
#获取excel中的header
header = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(1,3))
#获取excel中的param
body = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(1,4))
response = requests.request(Method,url,headers=header,params=body)
print (response.json())
2.加上unitest框架管理用例生成测试报告
#coding=utf-8
from python_API.common.ReadExcel import ReadExcel
from python_API.common.WriteExcel import wrtel
import requests
import json
import unittest
import HTMLTestRunner
class Test(unittest.TestCase):
def setUp(self):
self.url = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,1)
self.Method = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,2)
self.header = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(1,3))
def test01(self):
body = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(1,4))
response = requests.request(self.Method,self.url,headers=self.header,params=body)
#调用写入excel内容公共方法,将返回的报文实际结果写入到excel中
wrtel("d:\\dym.xls",0,1,6,response.text)
#断言结果是否正确
self.assertEqual(response.json()[",msg="test01 error!")
def test02(self):
body = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(2,4))
response = requests.request(self.Method,self.url,headers=self.header,params=body)
wrtel("d:\\dym.xls",0,2,6,response.text)
self.assertIn(u"错误",response.json()["errorMsg"],msg="test02 error!")
def test03(self):
body = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(3,4))
response = requests.request(self.Method,self.url,headers=self.header,params=body)
wrtel("d:\\dym.xls",0,3,6,response.text)
self.assertIn(u"错误",response.json()["errorMsg"],msg="test02 error!")
if __name__ == '__main__':
suit = unittest.TestSuite()
testcases = [Test("test01"),Test("test02"),Test("test03")]
suit.addTests(testcases)
dir = "D:\work_doc\pycharm2\python_API\\result\\report.html"
path = open(dir,"wb")
runner =HTMLTestRunner.HTMLTestRunner(stream=path,title="TestReport",description="test desc")
runner.run(suit)
3.循环读取excel文件内的参数
#coding=utf-8
from python_API.common.ReadExcel import ReadExcel
import requests
import json
import unittest
class Test(unittest.TestCase):
def setUp(self):
self.url = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,1)
self.Method = ReadExcel("d:\\dym.xls","Sheet1").getValue(1,2)
self.header = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(1,3))
def test01(self):
#调用读取excel类中的获取行数方法getRows(),获取有效行数
for row in range(ReadExcel("d:\\dym.xls","Sheet1").getRows()):
#因为第一行为标题,所以row为0时不能用来取值
if row >=1:
body = json.loads(ReadExcel("d:\\dym.xls","Sheet1").getValue(row,4))
response = requests.request(self.Method,self.url,headers=self.header,params=body)
if row == 1:
if response.json()["executeStatus"] == 0:
pass
else:
print ("case01 error!")
else:
if response.json()["executeStatus"] == 1:
pass
else:
print ("case02 error!")
if __name__ == '__main__':
unittest.main()
unittest管理接口用例(数据分离-读取excel)的更多相关文章
- unittest 管理接口用例(数据分离-读取excel)
1.公共模块 ---> login.xls """ common (package) ---> ReadFile.py """ ...
- unittest管理接口用例
1.加入unittest框架 #coding=utf-8 import requests import unittest class TestApi(unittest.TestCase): def s ...
- python接口自动化测试--数据分离读取Excal指定单元格数据
上一篇博客讲了怎么批量读取Excal单元格数据,现在咱们说一下怎么读取Excal指定单元格数据. 一.首先建一个Test_Main类 #!/usr/bin/python # -*- coding: U ...
- Jmeter 接口自动化-脚本数据分离实例
一. 背景: 为了让大家更加的了解Jmeter,并且使用起来游刃有余.这篇我们主要讲一下,如何优雅的使用Jmeter一步步的实现接口自动化,完成脚本与数据分离,把可能对Jmeter脚本的维护转移到c ...
- Python 用load_workbook 读取excel某个单元格数据、读取excel行数、列数
from openpyxl import load_workbook path = r'D:\pywork\12' # EXCEL信息所在文件夹 e= load_workbook(path + '/' ...
- requests,unittest——多接口用例,以及需要先登录再发报的用例
之前写过最简单的接口测试用例,本次利用unittest进行用例管理,并出测试报告,前两个用例是两个不同网页的get用例,第三个是需要登录才能访问的网页A,并在其基础上访问一个需要在A页面点开链接才能访 ...
- python web自动化测试框架搭建(功能&接口)——接口用例实现
测试用例基类: # coding=utf-8 import unittest import Logger log = Logger.Loger() class BaseCase(unittest.Te ...
- C#读取Excel数据操作大全
苦丁茶 发表于 2014-02-10 12:58:00 | 分类标签: ASP.NET 读取Excel 本文介绍下,用C#读取excel数据的例子,包括读取整个工作薄的数据.读取工作薄选定区域中的数据 ...
- C# 读取Excel中的数据
#region 读取Excel中的数据 /// <summary> /// 读取Excel中的数据 /// </summary> /// <param name=&quo ...
随机推荐
- Django框架入门1虚拟开发环境的配置
1.安装virtualenv虚拟程序 C:\Users\ws>pip install virtualenv 创建名字为testvir的虚拟环境 C:\Users\ws>virtualenv ...
- .netcore里使用StackExchange.Redis TimeOut 情况解决方法
在用StackExchange.Redis这个组件时候,时不时会出现异常TimeOut解决方法如下, 解决方法: 在Program的Main入口方法里添加一句话: System.Threading.T ...
- Jav面向对象
/* * 面向对象: * 1.关注现实存在的事物的各方面信息,从对象的角度出发,根据事物的特征进行程序设计 * 2.对象:用来描述客观事物的一个实体 * 3.类:具有相同属性和方法的一组对象的集合 * ...
- Maya编程——节点&命令
代码写完出现问题: 查了一下原因:
- Windows删除文件夹下的指定格式文件(递归删除)
问题描述: 今天遇到一个需求,需要对文件夹进行文件筛选.目录结构较为复杂(目录较多,层次较深),数据量较大(总共60GB左右). 鉴于上述情况,直接排除了人工处理方式(否则小伙伴们会打死我的). 解决 ...
- 使用命令行操作vmware esxi -- linux
为实现自动化,发现了两种命令行工具,一是开启vmware esxi后用xshell等连接工具去连接esxi后台:二是安装powercli连接.本文将介绍一些常用的命令去操作vmware esxi 本文 ...
- 如何优雅的使用telnet测试端口连通性
telnet命令是TELNET协议的用户接口,它支持两种模式:命令模式和会话模式,虽然telnet支持许多命令,但大部分情况下,我们只是使用它查看目标主机是否打开了某端口(默认是23). 其执行结果有 ...
- 打开iBatis显示运行sql语句
将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句,方便调试: log4j.logger.com.ibatis=DEBUG log4j.logger.com ...
- DRF框架(九)——drf偏移分页组件、drf游标分页组件(了解)、自定义过滤器、过滤器插件django-filter
drf偏移分页组件 paginations.py from rest_framework.pagination import LimitOffsetPagination class MyLimitOf ...
- 【论文排版工具】——LaTeX的安装及使用(MiKTeX+TexStudio+Windows)
版权声明:本文为CSDN博主「豆豆花」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/weixin_405 ...