码迷,mamicode.com
首页 > 其他好文 > 详细

测试登录:unittest,BeautifulReport

时间:2018-06-05 18:36:23      阅读:988      评论:0      收藏:0      [点我收藏+]

标签:rtp   oge   ova   uap   2dx   mkf   mwl   mux   gns   

import unittest,requests
import ddt
from BeautifulReport import BeautifulReport as bf
from urllib import parse
@ddt.ddt
class Login(unittest.TestCase):
base_url = ‘http://118.24.3.40/‘
@ddt.file_data(‘login.yaml‘)#ddt帮你读文件,获取文件内容,循环调用函数
def test_request(self,**kwargs):
detail = kwargs.get(‘detail‘,‘没写用例描述‘)
self._testMethodDoc = detail #动态的用例描述
url = kwargs.get(‘url‘)#url
url = parse.urljoin(self.base_url,url)#拼接好url
method = kwargs.get(‘method‘,‘get‘)#请求方式
data = kwargs.get(‘data‘,{}) #请求参数
header = kwargs.get(‘header‘,{})#请求头
cookie = kwargs.get(‘cookie‘,{})#cookie
check = kwargs.get(‘check‘)
method = method.lower() #便于处理
try:
if method==‘get‘:
res = requests.get(url,params=data,cookies=cookie,headers=header).text
#因为接口有异常的情况下, 可能返回的不是json串,会报错
else:
res = requests.post(url,data=data,cookies=cookie,headers=header).text
except Exception as e:
print(‘接口请求出错‘)
res = e
for c in check:
self.assertIn(c,res,msg=‘预计结果不符,预期结果【%s】,实际结果【%s】‘%(c,res))

sutie = unittest.TestSuite()
sutie.addTest(unittest.makeSuite(Login))
run = bf(sutie)
run.report(‘login_test‘,‘登录测试用例‘)
print(run.success_count) #通过的次数
print(run.failure_count) #失败的次数
# 1、运行的用例条数是不是和你的用例数一样
# 2、看看有没有其他不对的地方

如果报告报gbk编码错误,需要更改源码中encode
技术分享图片

测试登录:unittest,BeautifulReport

标签:rtp   oge   ova   uap   2dx   mkf   mwl   mux   gns   

原文地址:https://www.cnblogs.com/irisx/p/9141064.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!