修复上次全局替换,导致发送右键参数attachments被替换成files的问题;以及给yagmail_bot.py增加更友好的错误提示
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
# ------------------------------------ 测试数据配置 ----------------------------------------------------#
|
||||
ENV_VARS = {
|
||||
"common": {
|
||||
"报告标题": "UI自动化测试报告",
|
||||
"报告标题": "API 自动化测试报告",
|
||||
"项目名称": "GitLink 确实开源",
|
||||
"tester": "陈银花",
|
||||
"department": "开源中心",
|
||||
@@ -86,8 +86,11 @@ class RunConfig:
|
||||
|
||||
|
||||
# ------------------------------------ 配置信息 ----------------------------------------------------#
|
||||
# 0代表执行Excel和yaml两种格式的用例, 1 代表 yaml文件,2 用例代表Excel用例, 其他数值将不自动生成用例,仅能执行手动编写的用例
|
||||
CASE_FILE_TYPE = 1
|
||||
|
||||
# 0表示默认不发送任何通知, 1 代表钉钉通知,2 代表企业微信通知, 3 代表邮件通知, 4 代表所有途径都发送通知
|
||||
SEND_RESULT_TYPE = 0
|
||||
SEND_RESULT_TYPE = 3
|
||||
|
||||
# 指定日志收集级别
|
||||
LOG_LEVEL = "DEBUG" # 可选值:TRACE DEBUG INFO SUCCESS WARNING ERROR CRITICAL
|
||||
|
||||
@@ -4,10 +4,12 @@
|
||||
# @File : yagmail_bot.py
|
||||
# @Software: PyCharm
|
||||
# @Desc: 通过第三方模块yagmail发送邮件
|
||||
from loguru import logger
|
||||
|
||||
import yagmail
|
||||
# 标准库导入
|
||||
import os
|
||||
# 第三方库导入
|
||||
from loguru import logger
|
||||
import yagmail
|
||||
|
||||
|
||||
class YagEmailServe:
|
||||
@@ -27,12 +29,12 @@ class YagEmailServe:
|
||||
"subject": "",
|
||||
"contents": "",
|
||||
"to": "",
|
||||
"attachments": ""
|
||||
"files": ""
|
||||
}
|
||||
:return:
|
||||
"""
|
||||
try:
|
||||
logger.debug("\n======================================================\n" \
|
||||
logger.info("\n======================================================\n" \
|
||||
"-------------Start:发送邮件--------------------\n"
|
||||
f"用户名: {self.user}\n" \
|
||||
f"密码: {self.password}\n" \
|
||||
@@ -44,23 +46,24 @@ class YagEmailServe:
|
||||
password=self.password,
|
||||
host=self.host)
|
||||
# 如果存在附件,则与邮件内容一起发送附件,否则仅发送邮件内容
|
||||
if os.path.exists(info['attachments']):
|
||||
if info.get("attachments") and os.path.exists(info['attachments']):
|
||||
yag.send(
|
||||
to=info['to'],
|
||||
subject=info['subject'],
|
||||
contents=info['contents'],
|
||||
attachments=info['attachments'])
|
||||
else:
|
||||
logger.warning(f"\n请检查邮件内容info是否存在附件,info中应该存在键值:attachments\n"
|
||||
f"请检查附件地址是否正确 --> info['attachments'] 应该是一个有效的路径\n"
|
||||
f"当前仅发送邮件内容,不发送附件~")
|
||||
yag.send(
|
||||
to=info['to'],
|
||||
subject=info['subject'],
|
||||
contents=info['contents'])
|
||||
yag.close()
|
||||
logger.debug("\n======================================================\n" \
|
||||
"-------------End:发送邮件--------------------\n"
|
||||
"发送邮件成功\n" \
|
||||
"=====================================================")
|
||||
print("发送邮件成功")
|
||||
logger.info("\n======================================================\n" \
|
||||
"-------------End:发送邮件--------------------\n"
|
||||
"发送邮件成功\n" \
|
||||
"=====================================================")
|
||||
except Exception as e:
|
||||
logger.error(f"发送邮件失败,错误信息: {e}")
|
||||
print(f"发送邮件失败,错误信息: {e}")
|
||||
|
||||
@@ -80,7 +80,7 @@ def send_result(report_info: dict, report_path: str, attachment_path: str = None
|
||||
"""
|
||||
# 默认不发送任何通知
|
||||
if SEND_RESULT_TYPE == NotificationType.DEFAULT.value:
|
||||
logger.info(f"SEND_RESULT_TYPE={SEND_RESULT_TYPE}, 配置了不发送任何邮件")
|
||||
logger.debug(f"SEND_RESULT_TYPE={SEND_RESULT_TYPE}, 配置了不发送任何邮件")
|
||||
return
|
||||
|
||||
results = get_test_results_from_from_allure_report(report_path)
|
||||
|
||||
Reference in New Issue
Block a user