Files
smart-management-auto-test/dulizhan/library/BusinessKw/JoyHub/BlogCateManage.py
zhouqi 3191ec4f3c 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. 修复:
   - 修复产品创建测试用例缺少前置数据问题
2026-05-08 18:09:48 +08:00

131 lines
4.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding:utf-8 -*-
"""
blog分类管理业务关键字层
"""
import allure
from dulizhan.library.Dlizhan_interface import DlzhanInterface
from base_framework.public_tools import log
obj_log = log.get_logger()
class BlogCateManage(DlzhanInterface):
"""blog分类管理业务关键字类"""
def __init__(self):
super().__init__()
@allure.step("创建blog分类")
def kw_joyhub_blog_cate_create_post(self, name, id=0, status=1, rank_num=None, route=None, cover_image=None):
"""
创建blog分类业务关键字
:param id: 主键新增为0
:param name: 分类名称
:param status: 状态 (1正常 2停用)
:param rank_num: 排序(可选)
:param route: 路由(可选)
:param cover_image: 封面图对象,格式: {"url": "xxx", "name": None, "alt": ""}(可选)
:return: 响应结果
"""
obj_log.info(f"创建blog分类 - name: {name}, status: {status}")
params = {
"id": id,
"name": name,
"status": status
}
if rank_num is not None:
params["rankNum"] = rank_num
if route is not None:
params["route"] = route
if cover_image is not None:
if isinstance(cover_image, str):
params["coverImage"] = {"url": cover_image, "name": None, "alt": ""}
else:
params["coverImage"] = cover_image
resp = self.kw_in_joyhub_blog_cate_create_post(**params)
obj_log.info(f"创建blog分类响应: {resp}")
return resp
@allure.step("删除blog分类")
def kw_joyhub_blog_cate_delete_delete(self, cate_id):
"""
删除blog分类业务关键字
:param cate_id: blog分类ID
:return: 响应结果
"""
obj_log.info(f"删除blog分类 - cate_id: {cate_id}")
resp = self.kw_in_joyhub_blog_cate_delete_delete(cate_id)
obj_log.info(f"删除blog分类响应: {resp}")
return resp
@allure.step("获得blog分类详情")
def kw_joyhub_blog_cate_get_get(self, cate_id):
"""
获得blog分类详情业务关键字
:param cate_id: blog分类ID
:return: 响应结果
"""
obj_log.info(f"获得blog分类详情 - cate_id: {cate_id}")
resp = self.kw_in_joyhub_blog_cate_get_get(cate_id)
obj_log.info(f"获得blog分类详情响应: {resp}")
return resp
@allure.step("获得blog分类分页")
def kw_joyhub_blog_cate_page_get(self, page_num=1, page_size=10, **kwargs):
"""
获得blog分类分页业务关键字
:param page_num: 页码
:param page_size: 每页大小
:param kwargs: 其他查询条件
:return: 响应结果
"""
obj_log.info(f"获得blog分类分页 - page_num: {page_num}, page_size: {page_size}")
params = {
"page": page_num,
"size": page_size
}
params.update(kwargs)
resp = self.kw_in_joyhub_blog_cate_page_get(**params)
obj_log.info(f"获得blog分类分页响应: {resp}")
return resp
@allure.step("更新blog分类")
def kw_joyhub_blog_cate_update_put(self, cate_id, name, status=1, rank_num=None, route=None, cover_image=None):
"""
更新blog分类业务关键字
:param cate_id: blog分类ID
:param name: 分类名称
:param status: 状态 (1正常 2停用)
:param rank_num: 排序(可选)
:param route: 路由(可选)
:param cover_image: 封面图对象,格式: {"url": "xxx", "name": None, "alt": ""}(可选)
:return: 响应结果
"""
obj_log.info(f"更新blog分类 - cate_id: {cate_id}, name: {name}, status: {status}")
params = {
"id": cate_id,
"name": name,
"status": status
}
if rank_num is not None:
params["rankNum"] = rank_num
if route is not None:
params["route"] = route
if cover_image is not None:
if isinstance(cover_image, str):
params["coverImage"] = {"url": cover_image, "name": None, "alt": ""}
else:
params["coverImage"] = cover_image
resp = self.kw_in_joyhub_blog_cate_update_put(**params)
obj_log.info(f"更新blog分类响应: {resp}")
return resp