feat: 新增JoyHub模块测试用例和功能增强

1. 新增模块测试用例:
   - News分类接口测试 (Joyhub_NewsCate.py)
   - News内容接口测试 (Joyhub_News.py)
   - 产品分类接口测试 (Joyhub_ProductCate.py)
   - 产品属性接口测试 (Joyhub_ProductAttr.py)
   - 产品管理接口测试 (Joyhub_Product.py)
   - FAQ分类接口测试 (Joyhub_FaqCate.py)
   - FAQ内容接口测试 (Joyhub_Faq.py)
   - 博客分类接口测试 (Joyhub_BlogCate.py)
   - 地址国家接口测试 (Joyhub_AddressCountry.py)
   - 下载二维码接口测试 (Joyhub_DownloadQrcode.py)
   - 支付页产品推荐接口测试 (Joyhub_ProductPaymentRecommend.py)

2. 新增业务关键字层:
   - NewsCateManage.py
   - NewsManage.py
   - ProductCateManage.py
   - ProductAttrManage.py
   - ProductManage.py
   - FaqCateManage.py
   - FaqManage.py
   - BlogCateManage.py
   - AddressCountryManage.py
   - DownloadQrcodeManage.py
   - ProductPaymentRecommendManage.py

3. 接口层增强:
   - Dlizhan_interface.py 添加JoyHub相关接口封装

4. 功能增强:
   - run_tests.py 添加自动清除旧测试结果和报告功能
   - Joyhub_Product.py 添加数据库连接获取运费模板ID和品牌ID

5. 修复:
   - 修复产品创建测试用例缺少前置数据问题
This commit is contained in:
2026-05-08 18:09:48 +08:00
parent 32fd51380c
commit 3191ec4f3c
25 changed files with 4800 additions and 2 deletions

View File

@@ -0,0 +1,145 @@
# -*- coding:utf-8 -*-
"""
产品分类管理业务关键字层
"""
import allure
from dulizhan.library.Dlizhan_interface import DlzhanInterface
from base_framework.public_tools import log
obj_log = log.get_logger()
class ProductCateManage(DlzhanInterface):
"""产品分类管理业务关键字类"""
def __init__(self):
super().__init__()
@allure.step("创建产品分类")
def kw_joyhub_product_cate_create_post(self, cate_name, id=0, cate_type=1, status=1, rank_num=1):
"""
创建产品分类业务关键字
:param id: 主键ID新增为0
:param cate_name: 产品分类名称
:param cate_type: 类型(普通产品=1积分产品=2
:param status: 状态 (1正常 2停用)
:param rank_num: 排序号
:return: 响应结果
"""
obj_log.info(f"创建产品分类 - cate_name: {cate_name}, cate_type: {cate_type}")
params = {
"id": id,
"cateName": cate_name,
"cateType": cate_type,
"status": status,
"rankNum": rank_num
}
resp = self.kw_in_joyhub_product_cate_create_post(**params)
obj_log.info(f"创建产品分类响应: {resp}")
return resp
@allure.step("删除产品分类")
def kw_joyhub_product_cate_delete_delete(self, product_cate_id):
"""
删除产品分类业务关键字
:param product_cate_id: 产品分类ID
:return: 响应结果
"""
obj_log.info(f"删除产品分类 - product_cate_id: {product_cate_id}")
resp = self.kw_in_joyhub_product_cate_delete_delete(product_cate_id)
obj_log.info(f"删除产品分类响应: {resp}")
return resp
@allure.step("批量删除产品分类")
def kw_joyhub_product_cate_delete_list_delete(self, ids):
"""
批量删除产品分类业务关键字
:param ids: 产品分类ID列表
:return: 响应结果
"""
obj_log.info(f"批量删除产品分类 - ids: {ids}")
resp = self.kw_in_joyhub_product_cate_delete_list_delete(ids)
obj_log.info(f"批量删除产品分类响应: {resp}")
return resp
@allure.step("获得产品分类详情")
def kw_joyhub_product_cate_get_get(self, product_cate_id):
"""
获得产品分类详情业务关键字
:param product_cate_id: 产品分类ID
:return: 响应结果
"""
obj_log.info(f"获得产品分类详情 - product_cate_id: {product_cate_id}")
resp = self.kw_in_joyhub_product_cate_get_get(product_cate_id)
obj_log.info(f"获得产品分类详情响应: {resp}")
return resp
@allure.step("获得产品分类分页")
def kw_joyhub_product_cate_page_get(self, page_no=1, page_size=10, **kwargs):
"""
获得产品分类分页业务关键字
:param page_no: 页码
:param page_size: 每页大小
:param kwargs: 其他查询条件
:return: 响应结果
"""
obj_log.info(f"获得产品分类分页 - page_no: {page_no}, page_size: {page_size}")
params = {
"pageNo": page_no,
"pageSize": page_size
}
params.update(kwargs)
resp = self.kw_in_joyhub_product_cate_page_get(**params)
obj_log.info(f"获得产品分类分页响应: {resp}")
return resp
@allure.step("更新产品分类")
def kw_joyhub_product_cate_update_put(self, product_cate_id, cate_name, cate_type=1, status=1, rank_num=1):
"""
更新产品分类业务关键字
:param product_cate_id: 产品分类ID
:param cate_name: 产品分类名称
:param cate_type: 类型(普通产品=1积分产品=2
:param status: 状态 (1正常 2停用)
:param rank_num: 排序号
:return: 响应结果
"""
obj_log.info(f"更新产品分类 - product_cate_id: {product_cate_id}, cate_name: {cate_name}")
params = {
"id": product_cate_id,
"cateName": cate_name,
"cateType": cate_type,
"status": status,
"rankNum": rank_num
}
resp = self.kw_in_joyhub_product_cate_update_put(**params)
obj_log.info(f"更新产品分类响应: {resp}")
return resp
@allure.step("修改产品分类启用/停用状态")
def kw_joyhub_product_cate_change_status_put(self, product_cate_id, status):
"""
修改产品分类启用/停用状态业务关键字
:param product_cate_id: 产品分类ID
:param status: 状态 (1正常 2停用)
:return: 响应结果
"""
obj_log.info(f"修改产品分类状态 - product_cate_id: {product_cate_id}, status: {status}")
params = {
"id": product_cate_id,
"status": status
}
resp = self.kw_in_joyhub_product_cate_change_status_put(**params)
obj_log.info(f"修改产品分类状态响应: {resp}")
return resp