diff --git a/settings.py b/settings.py
index 6256f5c..7880334 100644
--- a/settings.py
+++ b/settings.py
@@ -1,207 +1,207 @@
-# -*- coding: utf-8 -*-
-# @Version: Python 3.9
-# @Time : 2023/1/9 17:08
-# @Author : chenyinhua
-# @File : settings.py
-# @Software: PyCharm
-# @Desc: 项目配置文件
-
-import os
-
-# 定义一个全局变量,用于存储运行过程中相关数据
-GLOBAL_VARS = {}
-
-# 定义一个变量。存储自定义的标记markers
-CUSTOM_MARKERS = []
-
-REPORT = {
- "报告标题": "API 自动化测试报告",
- "项目名称": "GitLink 确实开源",
- "tester": "陈银花",
- "department": "开源中心",
- "env": ""
-}
-# ------------------------------------ pytest相关配置 ----------------------------------------------------#
-# 失败重跑次数
-RERUN = 0
-
-# 失败重跑间隔时间
-RERUN_DELAY = 5
-
-# 当达到最大失败数,停止执行
-MAX_FAIL = "100"
-
-# ------------------------------------ 配置信息 ----------------------------------------------------#
-# 1 代表 yaml文件,其他数值将不自动生成用例,仅能执行手动编写的用例
-CASE_FILE_TYPE = 1
-
-# 0表示默认不发送任何通知, 1 代表钉钉通知,2 代表企业微信通知, 3 代表邮件通知, 4 代表所有途径都发送通知
-SEND_RESULT_TYPE = 0
-
-# 指定日志收集级别
-LOG_LEVEL = "DEBUG" # 可选值:TRACE DEBUG INFO SUCCESS WARNING ERROR CRITICAL
-"""
-支持的日志级别:
- TRACE: 最低级别的日志级别,用于详细追踪程序的执行。
- DEBUG: 用于调试和开发过程中打印详细的调试信息。
- INFO: 提供程序执行过程中的关键信息。
- SUCCESS: 用于标记成功或重要的里程碑事件。
- WARNING: 表示潜在的问题或不符合预期的情况,但不会导致程序失败。
- ERROR: 表示错误和异常情况,但程序仍然可以继续运行。
- CRITICAL: 表示严重的错误和异常情况,可能导致程序崩溃或无法正常运行。
-"""
-
-# ------------------------------------ 邮件配置信息 ----------------------------------------------------#
-
-# 发送邮件的相关配置信息
-email = {
- "user": "****email-user****", # 发件人邮箱
- "password": "****email-password****", # 发件人邮箱授权码
- "host": "smtp.qq.com",
- "to": ["****email-user-1****", "****email-user-2****"] # 收件人邮箱
-}
-
-# ------------------------------------ 邮件通知内容 ----------------------------------------------------#
-email_subject = f"UI自动化报告"
-email_content = """
- 各位同事, 大家好:
-
- 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
- ---------------------------------------------------------------------------------------------------------------
- 测试人: ${tester}
- 所属部门: ${department}
- 项目环境: ${env}
- ---------------------------------------------------------------------------------------------------------------
- 执行结果如下:
- 用例运行总数: ${total} 个
- 通过用例个数(passed): ${passed} 个
- 失败用例个数(failed): ${failed} 个
- 异常用例个数(error): ${broken} 个
- 跳过用例个数(skipped): ${skipped} 个
- 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
- 成 功 率: ${pass_rate} %
-
- **********************************
- 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
- """
-# ------------------------------------ 钉钉相关配置 ----------------------------------------------------#
-ding_talk = {
- "webhook_url": "https://oapi.dingtalk.com/robot/send?access_token=********",
- "secret": "****ding****"
-}
-
-# ------------------------------------ 钉钉通知内容 ----------------------------------------------------#
-ding_talk_title = f"UI自动化报告"
-ding_talk_content = """
- 各位同事, 大家好:
-
- ### 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
- ---------------------------------------------------------------------------------------------------------------
- #### 测试人: ${tester}
- #### 所属部门: ${department}
- #### 项目环境: ${env}
- ---------------------------------------------------------------------------------------------------------------
- #### 执行结果如下:
- - 用例运行总数: ${total} 个
- - 通过用例个数(passed): ${passed} 个
- - 失败用例个数(failed): ${failed} 个
- - 异常用例个数(error): ${broken} 个
- - 跳过用例个数(skipped): ${skipped} 个
- - 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
- - 成 功 率: ${pass_rate} %
-
- **********************************
- 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
- """
-# ------------------------------------ 企业微信相关配置 ----------------------------------------------------#
-wechat = {
- "webhook_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=********",
-}
-# ------------------------------------ 企业微信通知内容 ----------------------------------------------------#
-wechat_content = """
- 各位同事, 大家好:
-
- ### 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
- --------------------------------
- #### 测试人: ${tester}
- #### 所属部门: ${department}
- #### 项目环境: ${env}
- --------------------------------
- #### 执行结果如下:
- - 用例运行总数: ${total} 个
- - 通过用例个数(passed): ${passed} 个
- - 失败用例个数(failed): ${failed} 个
- - 异常用例个数(error): ${broken} 个
- - 跳过用例个数(skipped): ${skipped} 个
- - 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
- - 成 功 率: ${pass_rate} %
-
- **********************************
- 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
- """
-
-# ------------------------------------ 项目路径 ----------------------------------------------------#
-# 项目根目录
-BASE_DIR = os.path.dirname(os.path.abspath(__file__))
-
-# 通用模块目录
-UTILS_DIR = os.path.join(BASE_DIR, "utils")
-
-# 配置文件目录
-ENV_DIR = os.path.join(BASE_DIR, "env")
-
-# 接口数据模块目录
-INTERFACE_DIR = os.path.join(BASE_DIR, "interface")
-
-# gitlink测试数据模块目录
-GITLINK_DIR = os.path.join(INTERFACE_DIR, "gitlink")
-
-# osredm测试数据模块目录
-OSREDM_DIR = os.path.join(INTERFACE_DIR, "osredm")
-
-# pms测试数据模块目录
-PMS_DIR = os.path.join(INTERFACE_DIR, "pms")
-
-# glcc测试数据模块目录
-GLCC_DIR = os.path.join(INTERFACE_DIR, "glcc")
-
-# 测试文件模块目录
-FILES_DIR = os.path.join(BASE_DIR, "files")
-
-# 第三方库目录
-LIB_DIR = os.path.join(BASE_DIR, "lib")
-
-# 日志/报告保存目录
-OUT_DIR = os.path.join(BASE_DIR, "outputs")
-if not os.path.exists(OUT_DIR):
- os.mkdir(OUT_DIR)
-
-# 报告保存目录
-REPORT_DIR = os.path.join(OUT_DIR, "report")
-if not os.path.exists(REPORT_DIR):
- os.mkdir(REPORT_DIR)
-
-# 报日志保存目录
-LOG_DIR = os.path.join(OUT_DIR, "log")
-if not os.path.exists(LOG_DIR):
- os.mkdir(LOG_DIR)
-
-# 测试用例模块
-CASE_DIR = os.path.join(BASE_DIR, "test_case")
-
-# 手动生成测试用例模块
-MANUAL_CASE_DIR = os.path.join(CASE_DIR, "test_manual_case")
-if not os.path.exists(MANUAL_CASE_DIR):
- os.mkdir(MANUAL_CASE_DIR)
-
-# 自动生成测试用例模块
-AUTO_CASE_DIR = os.path.join(CASE_DIR, "test_auto_case")
-
-# Allure报告,测试结果集目录
-ALLURE_RESULTS_DIR = os.path.join(REPORT_DIR, "allure_results")
-
-# Allure报告,HTML测试报告目录
-ALLURE_HTML_DIR = os.path.join(REPORT_DIR, "allure_html")
-
-# Allure报告,配置文件目录
-ALLURE_CONFIG_DIR = os.path.join(LIB_DIR, "allure_config")
+# -*- coding: utf-8 -*-
+# @Version: Python 3.9
+# @Time : 2023/1/9 17:08
+# @Author : chenyi11nhua
+# @File : settings.py
+# @Software: PyCharm
+# @Desc: 项目配置文件
+
+import os
+
+# 定义一个全局变量,用于存储运行过程中相关数据
+GLOBAL_VARS = {}
+
+# 定义一个变量。存储自定义的标记markers
+CUSTOM_MARKERS = []
+
+REPORT = {
+ "报告标题": "API 自动化测试报告",
+ "项目名称": "GitLink 确实开源",
+ "tester": "陈银花",
+ "department": "开源中心",
+ "env": ""
+}
+# ------------------------------------ pytest相关配置 ----------------------------------------------------#
+# 失败重跑次数
+RERUN = 0
+
+# 失败重跑间隔时间
+RERUN_DELAY = 5
+
+# 当达到最大失败数,停止执行
+MAX_FAIL = "100"
+
+# ------------------------------------ 配置信息 ----------------------------------------------------#
+# 1 代表 yaml文件,其他数值将不自动生成用例,仅能执行手动编写的用例
+CASE_FILE_TYPE = 1
+
+# 0表示默认不发送任何通知, 1 代表钉钉通知,2 代表企业微信通知, 3 代表邮件通知, 4 代表所有途径都发送通知
+SEND_RESULT_TYPE = 0
+
+# 指定日志收集级别
+LOG_LEVEL = "DEBUG" # 可选值:TRACE DEBUG INFO SUCCESS WARNING ERROR CRITICAL
+"""
+支持的日志级别:
+ TRACE: 最低级别的日志级别,用于详细追踪程序的执行。
+ DEBUG: 用于调试和开发过程中打印详细的调试信息。
+ INFO: 提供程序执行过程中的关键信息。
+ SUCCESS: 用于标记成功或重要的里程碑事件。
+ WARNING: 表示潜在的问题或不符合预期的情况,但不会导致程序失败。
+ ERROR: 表示错误和异常情况,但程序仍然可以继续运行。
+ CRITICAL: 表示严重的错误和异常情况,可能导致程序崩溃或无法正常运行。
+"""
+
+# ------------------------------------ 邮件配置信息 ----------------------------------------------------#
+
+# 发送邮件的相关配置信息
+email = {
+ "user": "****email-user****", # 发件人邮箱
+ "password": "****email-password****", # 发件人邮箱授权码
+ "host": "smtp.qq.com",
+ "to": ["****email-user-1****", "****email-user-2****"] # 收件人邮箱
+}
+
+# ------------------------------------ 邮件通知内容 ----------------------------------------------------#
+email_subject = f"UI自动化报告"
+email_content = """
+ 各位同事, 大家好:
+
+ 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
+ ---------------------------------------------------------------------------------------------------------------
+ 测试人: ${tester}
+ 所属部门: ${department}
+ 项目环境: ${env}
+ ---------------------------------------------------------------------------------------------------------------
+ 执行结果如下:
+ 用例运行总数: ${total} 个
+ 通过用例个数(passed): ${passed} 个
+ 失败用例个数(failed): ${failed} 个
+ 异常用例个数(error): ${broken} 个
+ 跳过用例个数(skipped): ${skipped} 个
+ 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
+ 成 功 率: ${pass_rate} %
+
+ **********************************
+ 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
+ """
+# ------------------------------------ 钉钉相关配置 ----------------------------------------------------#
+ding_talk = {
+ "webhook_url": "https://oapi.dingtalk.com/robot/send?access_token=********",
+ "secret": "****ding****"
+}
+
+# ------------------------------------ 钉钉通知内容 ----------------------------------------------------#
+ding_talk_title = f"UI自动化报告"
+ding_talk_content = """
+ 各位同事, 大家好:
+
+ ### 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
+ ---------------------------------------------------------------------------------------------------------------
+ #### 测试人: ${tester}
+ #### 所属部门: ${department}
+ #### 项目环境: ${env}
+ ---------------------------------------------------------------------------------------------------------------
+ #### 执行结果如下:
+ - 用例运行总数: ${total} 个
+ - 通过用例个数(passed): ${passed} 个
+ - 失败用例个数(failed): ${failed} 个
+ - 异常用例个数(error): ${broken} 个
+ - 跳过用例个数(skipped): ${skipped} 个
+ - 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
+ - 成 功 率: ${pass_rate} %
+
+ **********************************
+ 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
+ """
+# ------------------------------------ 企业微信相关配置 ----------------------------------------------------#
+wechat = {
+ "webhook_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=********",
+}
+# ------------------------------------ 企业微信通知内容 ----------------------------------------------------#
+wechat_content = """
+ 各位同事, 大家好:
+
+ ### 自动化用例于 ${start_time} 开始运行,运行时长:${run_time} s, 目前已执行完成。
+ --------------------------------
+ #### 测试人: ${tester}
+ #### 所属部门: ${department}
+ #### 项目环境: ${env}
+ --------------------------------
+ #### 执行结果如下:
+ - 用例运行总数: ${total} 个
+ - 通过用例个数(passed): ${passed} 个
+ - 失败用例个数(failed): ${failed} 个
+ - 异常用例个数(error): ${broken} 个
+ - 跳过用例个数(skipped): ${skipped} 个
+ - 失败重试用例个数 * 次数之和(rerun): ${rerun} 个
+ - 成 功 率: ${pass_rate} %
+
+ **********************************
+ 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。
+ """
+
+# ------------------------------------ 项目路径 ----------------------------------------------------#
+# 项目根目录
+BASE_DIR = os.path.dirname(os.path.abspath(__file__))
+
+# 通用模块目录
+UTILS_DIR = os.path.join(BASE_DIR, "utils")
+
+# 配置文件目录
+ENV_DIR = os.path.join(BASE_DIR, "env")
+
+# 接口数据模块目录
+INTERFACE_DIR = os.path.join(BASE_DIR, "interface")
+
+# gitlink测试数据模块目录
+GITLINK_DIR = os.path.join(INTERFACE_DIR, "gitlink")
+
+# osredm测试数据模块目录
+OSREDM_DIR = os.path.join(INTERFACE_DIR, "osredm")
+
+# pms测试数据模块目录
+PMS_DIR = os.path.join(INTERFACE_DIR, "pms")
+
+# glcc测试数据模块目录
+GLCC_DIR = os.path.join(INTERFACE_DIR, "glcc")
+
+# 测试文件模块目录
+FILES_DIR = os.path.join(BASE_DIR, "files")
+
+# 第三方库目录
+LIB_DIR = os.path.join(BASE_DIR, "lib")
+
+# 日志/报告保存目录
+OUT_DIR = os.path.join(BASE_DIR, "outputs")
+if not os.path.exists(OUT_DIR):
+ os.mkdir(OUT_DIR)
+
+# 报告保存目录
+REPORT_DIR = os.path.join(OUT_DIR, "report")
+if not os.path.exists(REPORT_DIR):
+ os.mkdir(REPORT_DIR)
+
+# 报日志保存目录
+LOG_DIR = os.path.join(OUT_DIR, "log")
+if not os.path.exists(LOG_DIR):
+ os.mkdir(LOG_DIR)
+
+# 测试用例模块
+CASE_DIR = os.path.join(BASE_DIR, "test_case")
+
+# 手动生成测试用例模块
+MANUAL_CASE_DIR = os.path.join(CASE_DIR, "test_manual_case")
+if not os.path.exists(MANUAL_CASE_DIR):
+ os.mkdir(MANUAL_CASE_DIR)
+
+# 自动生成测试用例模块
+AUTO_CASE_DIR = os.path.join(CASE_DIR, "test_auto_case")
+
+# Allure报告,测试结果集目录
+ALLURE_RESULTS_DIR = os.path.join(REPORT_DIR, "allure_results")
+
+# Allure报告,HTML测试报告目录
+ALLURE_HTML_DIR = os.path.join(REPORT_DIR, "allure_html")
+
+# Allure报告,配置文件目录
+ALLURE_CONFIG_DIR = os.path.join(LIB_DIR, "allure_config")