auto_test_dev/YiMao/scripts/BusiScenarios/test_CVip004_AddMultipleItemsForPurchase.py

58 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/20
import unittest,allure,time,pytest,ddt
from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit
DescName = "Vip004-游客转会员登录,加购多件商品,并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip004(unittest.TestCase):
f'''@Date:: 2024/11/15
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
'''
@ddt.data(*DataInit)
def test_CVip004_AddMultipleItemsForPurchase(self,data):
allure.dynamic.description(f"描述:{DescName}")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
goods_inputcode1 = data["NormalGoods"]["goods01"]
goods_inputcode2 = data["NormalGoods"]["goods02"]
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获取商品1信息")
GoodsInfoData1 = ymc.get_goods_info(InputCode=goods_inputcode1)
if GoodsInfoData1['msg'] != '加购商品不存在':
allure.step("步骤5添加商品1")
ymc.add_cart_goods(GoodsInfoData1, 1, LoginData)
allure.step("步骤6获取商品2信息")
GoodsInfoData2 = ymc.get_goods_info(InputCode=goods_inputcode2)
if GoodsInfoData2['msg'] != '加购商品不存在':
allure.step("步骤7添加商品2")
ymc.add_cart_goods(GoodsInfoData2, 1, LoginData)
allure.step("步骤8获取购物车商品信息")
ymc.get_cart_goods_info([GoodsInfoData1, GoodsInfoData2])
allure.step("步骤9请求订单结算")
ymc.request_order_settlement(LoginData)
else:
pytest.fail(f"---商品 {goods_inputcode2} 不存在")
else:
pytest.fail(f"---商品 {goods_inputcode1} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)