接口测试框架V1.0版
Posted 测试阿拉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试框架V1.0版相关的知识,希望对你有一定的参考价值。
自动化测试框架目录结构如下:
report:生成接口自动化测试报告
test_case:用于编写接口自动化测试用例
run:执行所有接口测试用例
1).run_test.py 生成测试报告
2).run_mail.py 生成测试报告并发送邮件(邮件正文显示测试报告)
3).run_mail_file.py 2+正文加附件的形式(正文可编写)
【注】此框架:没有连接数据库
run_mail_file.py(建议使用这一种)
# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
import unittest,os
import time
from htmlTestRunner import HTMLTestRunner
import smtplib
from email.mime.text import MIMEText #MIMRText()定义邮件正文
from email.mime.multipart import MIMEMultipart #MIMEMulipart模块构造带附件
def send_mail(file_new):
#multpart有三种类型,如果一个邮件有纯文本正文,超文本正文,内嵌资源,附件,则选择mixed类型
msg = MIMEMultipart('mixed')
#邮箱标题+发件人+收件人
Subject = '绿湾_ala_接口自动化测试报告'
msg['Subject'] = Subject
msg['From'] = 'ala'
#接收者,可以多个
receiver = ['lishikun@lvwan.com', 'ala9981@126.com']
msg['To'] = ';'.join(receiver)
username = '账号'
password = '密码'
#邮箱正文
text = "Hi,附件是测试报告,请使用浏览器打开查看!"
text_plain = MIMEText(text, 'plain', 'utf-8')
msg.attach(text_plain)
#邮箱附件
f = open(file_new, 'rb')
mail_body = f.read()
f.close()
file = MIMEText(mail_body, 'base64', 'utf-8')
file['Content-type'] = 'application/cttet-strem'
file["Content-Disposition"] = "attachment;filename = test_report.html"
msg.attach(file)
#开启邮箱服务
smtp = smtplib.SMTP()
smtp.connect('smtp.lvwan.com')
smtp.login(username,password)
smtp.sendmail(username,receiver,msg.as_string())
#msg:发送消息:邮件内容。一般是msg.as_string():as_string()是将msg(MIMEText对象或者MIMEMultipart对象)变为str。
smtp.quit()
def new_report(test_report):
#获取最新测试生成的测试报告
lists = os.listdir(test_report)
lists.sort(key=lambda fn:os.path.getmtime(test_report+'\\'+fn))
file_new = os.path.join(test_report,lists[-1])
return file_new
if __name__ == '__main__':
now = time.strftime("%Y-%m-%d %H_%M_%S")
#测试报告路径
test_report = "D:\\PycharmProjects\\LV_BG\\LvWan\\Request_test\\Report"
#测试case所在目录
test_dir = 'D:\\PycharmProjects\\LV_BG\\LvWan\\Request_test\\test_case'
discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py')
filename = "D:\\PycharmProjects\\LV_BG\\LvWan\\Request_test\\report\\" + now + 'test_report.html'
fp = open(filename,"wb")
#生成html的测试报告
runner = HTMLTestRunner(stream= fp,title = "搜索接口测试报告",description="测试用例执行概况", tester="ala")
runner.run(discover)
fp.close()
new_report = new_report(test_report)
send_mail(new_report)
if send_mail:
print "邮件已发出"
else:
print "发送失败"
3.以上源码可以直接使用,只要修改测试用例中的请求就可以,测试用例在之前已经贴出来了,加油,如果你有什么建议欢迎留言,一起学习
以上是关于接口测试框架V1.0版的主要内容,如果未能解决你的问题,请参考以下文章