# -*- coding: utf-8 -*- # @Version: Python 3.9 # @Time : 2023/1/9 17:08 # @Author : chenyinhua # @File : settings.py # @Software: PyCharm # @Desc: 项目配置文件 # ------------------------------------ 测试数据配置 ----------------------------------------------------# ENV_VARS = { "common": { "报告标题": "API 自动化测试报告", "项目名称": "GitLink 确实开源", "tester": "陈银花", "department": "开源中心", "env": "" }, "test": { # 环境相关域名 "host": "https://******", "wiki_host": "https://******", "pms_host": "https://******", "glcc_host": "https://******", # 获取oauth_token需要的参数 "client_id": "****client_id****", "client_secret": "****client_secret****", # 万能验证码 "green_code": "******", # 测试账号 - 普通用户(测试仓库开发者), 默认登录账号 "env_login": "******", "env_password": "******", # 运行时需要手动更改密码 "env_nickname": "******", "env_user_id": 106, # 测试账号 - 普通用户(测试仓库报告者) "t_login": "******", "t_password": "******", "t_nickname": "******", "t_user_id": 290, # 测试账号 - 超级管理员(测试仓库管理员) "env_super_login": "******", "env_super_password": "******", # 运行时需要手动更改密码 # 测试仓库 env_repo_owner/env_repo_identifier "env_repo_owner": "******", "env_repo_identifier": "******", "env_project_id": "", # pms相关环境变量 - 产品 "env_pms_product_id": "", "env_pms_product_identifier": "", # pms相关环境变量 - 项目 "env_pms_project_id": "", # pms相关环境变量 - 企业 "env_enterprise_identifier": "", "env_enterprise_id": "", "env_organization_id": 249, "env_dept_id": 349, # 数据库配置 "db_info": { "db_host": "xx.xx.xx.xx", "db_port": 3306, "db_user": "root", "db_pwd": "**********", "db_database": "test**********", "ssh": False, "ssh_host": "xx.xx.xx.xx", "ssh_port": 3306, "ssh_user": "root", "ssh_pwd": "**********" } }, "dev": { # 环境相关域名 "host": "http://******", "wiki_host": "", "pms_host": "http://******", # 获取oauth_token需要的参数 "client_id": "****client_id****", "client_secret": "****client_secret****", # 万能验证码 "green_code": "******", # 测试账号 - 普通用户(测试仓库开发者), 默认登录账号 "env_login": "******", "env_password": "******", # 运行时需要手动更改密码 "env_nickname": "******", "env_user_id": 36669, # 测试账号 - 超级管理员(测试仓库管理员) "env_super_login": "******", "env_super_password": "******", "env_super_nickname": "******", "env_super_user_id": 36661, # 测试账号 - 普通用户(测试仓库报告者) "t_login": "******", "t_password": "******", "t_nickname": "******", "t_user_id": 36670, # 测试仓库 env_repo_owner/env_repo_identifier "env_repo_owner": "******", "env_repo_identifier": "******", "env_project_id": "****", # pms相关环境变量 - 产品 "env_pms_product_id": "", "env_pms_product_identifier": "", # pms相关环境变量 - 项目 "env_pms_project_id": "", # pms相关环境变量 - 企业 "env_enterprise_identifier": "", "env_enterprise_id": "", "env_organization_id": 36663, "env_dept_id": 331, # 数据库配置 "db_info": { "db_host": "xx.xx.xx.xx", "db_port": 3306, "db_user": "root", "db_pwd": "**********", "db_database": "test**********", "ssh": False, "ssh_host": "xx.xx.xx.xx", "ssh_port": 3306, "ssh_user": "root", "ssh_pwd": "**********" } }, "pre": { # 环境相关域名 "host": "http://******", "wiki_host": "http://******", "pms_host": "https://******", # 获取oauth_token需要的参数 "client_id": "****client_id-pre****", "client_secret": "****client_secret-pre****", # 万能验证码 "green_code": "******", # 测试账号 - 普通用户(测试仓库开发者), 默认登录账号 "env_login": "******", "env_password": "******", # 运行时需要手动更改密码 "env_nickname": "******", "env_user_id": 115, # 测试账号 - 普通用户(测试仓库报告者) "t_login": "******", "t_password": "******", "t_nickname": "******", "t_user_id": 36546, # 测试账号 - 超级管理员(测试仓库管理员) "env_super_login": "******", "env_super_password": "******", # 运行时需要手动更改密码 "env_super_user_id": 110, # 测试仓库 env_repo_owner/env_repo_identifier "env_repo_owner": "******", "env_repo_identifier": "******", "env_project_id": "******", # pms相关环境变量 "env_pms_product_id": "", "env_pms_product_identifier": "", "env_pms_project_id": "", "env_dept_id": "", # 数据库配置 "db_info": { "db_host": "xx.xx.xx.xx", "db_port": 3306, "db_user": "root", "db_pwd": "**********", "db_database": "test**********", "ssh": False, "ssh_host": "xx.xx.xx.xx", "ssh_port": 3306, "ssh_user": "root", "ssh_pwd": "**********" } }, "live": { # 环境相关域名 "host": "https://******", "wiki_host": "https://******", "pms_host": "https://*****", # 获取oauth_token需要的参数 "client_id": "****client_id-live****", "client_secret": "****client_secret-live****", # 万能验证码 "green_code": "****green_code-live****", # 测试账号 - (测试仓库开发者), 默认登录账号 "env_login": "******", "env_password": "******", "env_nickname": "******", "env_user_id": 87611, # 测试账号 - 普通用户(测试仓库报告者) "t_login": "******", "t_password": "******", "t_nickname": "******", "t_user_id": 87691, # 测试账号 - 超级管理员 (测试仓库管理员) "env_super_login": "", "env_super_password": "", "env_super_user_id": 0, # 测试仓库 env_repo_owner/env_repo_identifier "env_repo_owner": "", "env_repo_identifier": "", "env_project_id": "", # pms相关环境变量 "env_pms_product_id": "", "env_pms_product_identifier": "", "env_pms_project_id": "", "env_dept_id": "", # 数据库配置 "db_info": { "db_host": "xx.xx.xx.xx", "db_port": 3306, "db_user": "root", "db_pwd": "**********", "db_database": "test**********", "ssh": True, "ssh_host": "xx.xx.xx.xx", "ssh_port": 3306, "ssh_user": "root", "ssh_pwd": "**********" } } } # ------------------------------------ pytest相关配置 ----------------------------------------------------# class RunConfig: """ 运行测试配置 """ # 失败重跑次数 rerun = 0 # 失败重跑间隔时间 reruns_delay = 5 # 当达到最大失败数,停止执行 max_fail = "100" # ------------------------------------ 配置信息 ----------------------------------------------------# # 0代表执行Excel和yaml两种格式的用例, 1 代表 yaml文件,2 用例代表Excel用例, 其他数值将不自动生成用例,仅能执行手动编写的用例 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} % ********************************** 附件为具体的测试报告,详细情况可下载附件查看, 非相关负责人员可忽略此消息。谢谢。 """