auto_test_dev/YiMao/ZeroLib/test_CVip019_ReceiveCoupon.py

62 lines
2.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.

# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 匿名转会员登录,领取优惠券
# @Date:: 2024/11/25
import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit
DescName = "Vip019-匿名转会员登录,领取优惠券"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip019(unittest.TestCase):
f'''@Date:: 2024/11/25
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
'''
@ddt.data(*DataInit)
def test_CVip019_ReceiveCoupon(self, data):
allure.dynamic.description(f"描述:{DescName}\n")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
goodsbag_mid = data["ShoppingBag"]["mid"]
goodsbag_max = data["ShoppingBag"]["max"]
allure.step("步骤1session开始")
ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
ymc.login_app_v2(Payload02)
allure.step("步骤4领取优惠券")
CouponListData = ymc.get_coupon_list() # step6获取优惠券列表
ymc.receive_coupon(CouponListData) # step7领取优惠券
ymc.query_coupon_list_user() # step8查询用户持有的优惠券列表
allure.step("步骤5加购可享优惠券优惠的商品并结算")
GoodsInfoData = ymc.get_goods_info(goodsbag_mid)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤6添加购物袋")
AddPurchaseQuantity = 5
ymc.add_cart_goods(GoodsInfoData, AddPurchaseQuantity, LoginData)
GoodsInfoData["data"]["qty"] = AddPurchaseQuantity
allure.step("步骤7获取购物车商品信息")
ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤8请求订单结算")
ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---购物袋 {goodsbag_mid} 不存在")
pytest.fail(f"购物袋 {goodsbag_mid} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)