Arthur-Wu committed this file on 2024-11-26

This commit is contained in:
ieemoo 2024-11-26 16:24:26 +08:00
parent b7a15520d9
commit 11436545e8
37 changed files with 238 additions and 267 deletions

View File

@ -125,7 +125,7 @@ class YMServiceApi(object):
:param NewStoreInfo: :param NewStoreInfo:
:return: :return:
''' '''
logging.info("========== [更新购物车信息] ==========") logging.info("========== [更新购物车 所属门店 信息] ==========")
payload = json.dumps({ payload = json.dumps({
"id": 1213, "id": 1213,
"mac": CartMac, # "mac": CartMac, #

View File

@ -15,8 +15,6 @@ class Test_CAnon001_AddShoppingBagAndSettlePayment(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境购物袋inputcode为
69716489229906971648922983
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon00101_AddMidShoppingbagsForPurchase(self, data): def test_CAnon00101_AddMidShoppingbagsForPurchase(self, data):

View File

@ -15,8 +15,6 @@ class Test_CAnon002(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: test_C003_NonVipAddNonDiscountedProductsForPurchase @Desc:: test_C003_NonVipAddNonDiscountedProductsForPurchase
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境普通无优惠商品inputcode为
6924743915848
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon002_AddNonDiscountedProductsForPurchase(self, data): def test_CAnon002_AddNonDiscountedProductsForPurchase(self, data):

View File

@ -15,7 +15,6 @@ class Test_CAnon004(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境多件商品的 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon004_AddMultipleItemsForPurchase(self, data): def test_CAnon004_AddMultipleItemsForPurchase(self, data):

View File

@ -15,8 +15,6 @@ class Test_CAnon005(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境会员有优惠商品inputcode为
折扣商品暂未提供
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon005_AddDiscountedProductsForPurchase(self, data): def test_CAnon005_AddDiscountedProductsForPurchase(self, data):

View File

@ -16,8 +16,6 @@ class Test_CAnon006(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境促销白名单商品inputcode为
6925303796426
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon006_AddPromotionalWhitelistProducts(self, data): def test_CAnon006_AddPromotionalWhitelistProducts(self, data):

View File

@ -17,8 +17,6 @@ class Test_CAnon007(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境重量放通商品inputcode为
6924743915848
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon007_AddWeightToTheProduct(self, data): def test_CAnon007_AddWeightToTheProduct(self, data):

View File

@ -15,7 +15,6 @@ class Test_CAnon008(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境购物袋的 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon008_ReturnShoppingBag(self, data): def test_CAnon008_ReturnShoppingBag(self, data):

View File

@ -15,7 +15,6 @@ class Test_CAnon009(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境2个普通商品 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon009_ReturnPurchaseOfOrdinaryGoods(self, data): def test_CAnon009_ReturnPurchaseOfOrdinaryGoods(self, data):

View File

@ -16,7 +16,6 @@ class Test_CAnon010(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境2个会员商品 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon010_ReturnOfMemberProducts(self, data): def test_CAnon010_ReturnOfMemberProducts(self, data):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon011-非会员,加购多件商品,退购一个商品,并结算" DescName = "Anon011-非会员,加购多件商品,退购一个商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon011(unittest.TestCase): class Test_CAnon011(unittest.TestCase):
@ -15,7 +16,6 @@ class Test_CAnon011(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境多件商品的 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon011_ReturnOneItemFromMultiplePurchases(self, data): def test_CAnon011_ReturnOneItemFromMultiplePurchases(self, data):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon012-非会员加购2个打折商品退购一个并结算" DescName = "Anon012-非会员加购2个打折商品退购一个并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon012(unittest.TestCase): class Test_CAnon012(unittest.TestCase):
@ -15,7 +16,6 @@ class Test_CAnon012(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境2个打折商品 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon012_ReturnOfDiscountedProducts(self, data): def test_CAnon012_ReturnOfDiscountedProducts(self, data):

View File

@ -9,6 +9,7 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon013-非会员加购2个促销白名单商品退购一个" DescName = "Anon013-非会员加购2个促销白名单商品退购一个"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon013(unittest.TestCase): class Test_CAnon013(unittest.TestCase):
@ -16,7 +17,6 @@ class Test_CAnon013(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境促销白名单商品 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon013_ReturnPromotionWhitelistProducts(self, data): def test_CAnon013_ReturnPromotionWhitelistProducts(self, data):

View File

@ -9,6 +9,7 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon014-非会员加购2个重量放通商品退购一个" DescName = "Anon014-非会员加购2个重量放通商品退购一个"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon014(unittest.TestCase): class Test_CAnon014(unittest.TestCase):
@ -16,7 +17,6 @@ class Test_CAnon014(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境重量放通白名单商品 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon014_ReturnWeightOfTheProducte(self,data): def test_CAnon014_ReturnWeightOfTheProducte(self,data):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon015-匿名登录加购计件商品,并结算" DescName = "Anon015-匿名登录加购计件商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon015(unittest.TestCase): class Test_CAnon015(unittest.TestCase):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon016-匿名登录,加购计件商品,并退购" DescName = "Anon016-匿名登录,加购计件商品,并退购"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon016(unittest.TestCase): class Test_CAnon016(unittest.TestCase):

View File

@ -7,6 +7,7 @@ import unittest,allure,time,pytest,ddt
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon017-匿名登录,加购计重商品,并结算" DescName = "Anon017-匿名登录,加购计重商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon017(unittest.TestCase): class Test_CAnon017(unittest.TestCase):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Anon018-匿名登录,加购计重商品,并退购" DescName = "Anon018-匿名登录,加购计重商品,并退购"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CAnon018(unittest.TestCase): class Test_CAnon018(unittest.TestCase):
@ -15,9 +16,6 @@ class Test_CAnon018(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1步骤
1加购计件或计重商品
2退购一件
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CAnon018(self,data): def test_CAnon018(self,data):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "NoLogin001-购物车客户端-广告" DescName = "NoLogin001-购物车客户端-广告"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CNoLogin001(unittest.TestCase): class Test_CNoLogin001(unittest.TestCase):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip001-游客转会员登录,加购购物袋,并结算" DescName = "Vip001-游客转会员登录,加购购物袋,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip001_AddShoppingBagAndSettlePayment(unittest.TestCase): class Test_CVip001_AddShoppingBagAndSettlePayment(unittest.TestCase):

View File

@ -7,6 +7,7 @@ import unittest,allure,time,pytest,ddt
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip002-游客转会员登录,加购普通商品,并结算" DescName = "Vip002-游客转会员登录,加购普通商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip002(unittest.TestCase): class Test_CVip002(unittest.TestCase):

View File

@ -7,6 +7,7 @@ import unittest,allure,time,pytest,ddt
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip003-游客转会员登录,加购会员商品,并结算" DescName = "Vip003-游客转会员登录,加购会员商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip003(unittest.TestCase): class Test_CVip003(unittest.TestCase):

View File

@ -7,6 +7,7 @@ import unittest,allure,time,pytest,ddt
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip004-游客转会员登录,加购多件商品,并结算" DescName = "Vip004-游客转会员登录,加购多件商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip004(unittest.TestCase): class Test_CVip004(unittest.TestCase):
@ -14,7 +15,6 @@ class Test_CVip004(unittest.TestCase):
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境多件商品的 inputcode 分别为
''' '''
@ddt.data(*DataInit) @ddt.data(*DataInit)
def test_CVip004_AddMultipleItemsForPurchase(self,data): def test_CVip004_AddMultipleItemsForPurchase(self,data):

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip005-游客转会员登录,加购打折商品,并结算" DescName = "Vip005-游客转会员登录,加购打折商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip005(unittest.TestCase): class Test_CVip005(unittest.TestCase):

View File

@ -9,6 +9,7 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip006-游客转会员登录,加购促销白名单商品,并结算" DescName = "Vip006-游客转会员登录,加购促销白名单商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip006(unittest.TestCase): class Test_CVip006(unittest.TestCase):

View File

@ -9,6 +9,7 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip007-游客转会员登录,加购重量放通商品,并结算" DescName = "Vip007-游客转会员登录,加购重量放通商品,并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip007(unittest.TestCase): class Test_CVip007(unittest.TestCase):

View File

@ -9,6 +9,7 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip008-游客转会员登录加购2个购物袋退购一个购物袋并结算" DescName = "Vip008-游客转会员登录加购2个购物袋退购一个购物袋并结算"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip008(unittest.TestCase): class Test_CVip008(unittest.TestCase):

View File

@ -3,67 +3,70 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 游客转会员登录加购2个会员商品退购一个并结算 # @Description:: 游客转会员登录加购2个会员商品退购一个并结算
# @Date:: 2024/11/21 # @Date:: 2024/11/21
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from configs.globalParams import DataInit
DescName = "Vip010-游客转会员登录加购2个会员商品退购一个并结算" DescName = "Vip010-游客转会员登录加购2个会员商品退购一个并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip010(unittest.TestCase): class Test_CVip010(unittest.TestCase):
f'''@Date:: 2024/11/20 f'''@Date:: 2024/11/20
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境2个会员商品 inputcode 分别为
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.vip_goods_01 = VipGoodsInputcode
self.vip_goods_02 = VipGoodsInputcode02
def test_CVip010_ReturnOfMemberProducts(self): @ddt.data(*DataInit)
def test_CVip010_ReturnOfMemberProducts(self,data):
allure.dynamic.description(f"描述:{DescName}") allure.dynamic.description(f"描述:{DescName}")
ymc = YMClientApi(data["ShoppingCartMac"])
yms = YMServiceApi()
CartMac = data["ShoppingCartMac"]
NewStoreId = data["MarketAndStoreDetails"]["putStoreId"][0]
yms.update_the_store_to_which_the_shopping_cart_belongs(CartMac, NewStoreId)
time.sleep(1)
vip_phone_num = data["VIPPhoneNumber"]
vip_goods_01 = data["VipGoods"]['goods01']
vip_goods_02 = data["VipGoods"]['goods02']
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
'''step1加购商品x分别加购x件''' '''step1加购商品x分别加购x件'''
allure.step("步骤3获取商品1信息") allure.step("步骤3获取商品1信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(InputCode=self.vip_goods_01) GetGoodsInfoResp_01 = ymc.get_goods_info(InputCode=vip_goods_01)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加商品1") allure.step("步骤4添加商品1")
self.ymc.add_cart_goods(GetGoodsInfoResp_01, 3, LoginData) ymc.add_cart_goods(GetGoodsInfoResp_01, 3, LoginData)
allure.step("步骤5获取商品2信息") allure.step("步骤5获取商品2信息")
GetGoodsInfoResp_02 = self.ymc.get_goods_info(InputCode=self.vip_goods_02) GetGoodsInfoResp_02 = ymc.get_goods_info(InputCode=vip_goods_02)
if GetGoodsInfoResp_02['msg'] != '加购商品不存在': if GetGoodsInfoResp_02['msg'] != '加购商品不存在':
allure.step("步骤6添加商品2") allure.step("步骤6添加商品2")
AddGoodsResp = self.ymc.add_cart_goods(GetGoodsInfoResp_02, 1, LoginData) AddGoodsResp = ymc.add_cart_goods(GetGoodsInfoResp_02, 1, LoginData)
''' step2随机退购一个商品并结算 ''' ''' step2随机退购一个商品并结算 '''
allure.step("\n步骤7退购一件商品") allure.step("\n步骤7退购一件商品")
GetGoodsInfoList = [GetGoodsInfoResp_01, GetGoodsInfoResp_02] GetGoodsInfoList = [GetGoodsInfoResp_01, GetGoodsInfoResp_02]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤8获取购物车商品信息") allure.step("步骤8获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01, GetGoodsInfoResp_02]) ymc.get_cart_goods_info([GetGoodsInfoResp_01, GetGoodsInfoResp_02])
allure.step("步骤9请求订单结算") allure.step("步骤9请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {self.vip_goods_02} 不存在") pytest.fail(f"---商品 {vip_goods_02} 不存在")
pytest.fail(f"---商品 {self.vip_goods_02} 不存在")
else: else:
LOGGER.info(f"---商品 {self.vip_goods_01} 不存在") pytest.fail(f"---商品 {vip_goods_01} 不存在")
pytest.fail(f"---商品 {self.vip_goods_01} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,67 +3,63 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购多件商品,退购一个商品,并结算 # @Description:: 游客转会员登录,加购多件商品,退购一个商品,并结算
# @Date:: 2024/11/21 # @Date:: 2024/11/21
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip011-游客转会员登录,加购多件商品,退购一个商品,并结算" DescName = "Vip011-游客转会员登录,加购多件商品,退购一个商品,并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip011(unittest.TestCase): class Test_CVip011(unittest.TestCase):
f'''@Date:: 2024/11/20 f'''@Date:: 2024/11/20
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境多件商品的 inputcode 分别为
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.goods_inputcode1 = NormalGoodsInputcode01
self.goods_inputcode2 = NormalGoodsInputcode02
def test_CVip011_ReturnOneItemFromMultiplePurchases(self): @ddt.data(*DataInit)
def test_CVip011_ReturnOneItemFromMultiplePurchases(self,data):
allure.dynamic.description(f"描述:{DescName}") 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开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
'''step1加购商品x分别加购x件''' '''step1加购商品x分别加购x件'''
allure.step("步骤3获取商品1信息") allure.step("步骤3获取商品1信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(InputCode=self.goods_inputcode1) GetGoodsInfoResp_01 = ymc.get_goods_info(InputCode=goods_inputcode1)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加商品1") allure.step("步骤4添加商品1")
self.ymc.add_cart_goods(GetGoodsInfoResp_01, 2, LoginData) ymc.add_cart_goods(GetGoodsInfoResp_01, 2, LoginData)
allure.step("步骤5获取商品2信息") allure.step("步骤5获取商品2信息")
GetGoodsInfoResp_02 = self.ymc.get_goods_info(InputCode=self.goods_inputcode2) GetGoodsInfoResp_02 = ymc.get_goods_info(InputCode=goods_inputcode2)
if GetGoodsInfoResp_02['msg'] != '加购商品不存在': if GetGoodsInfoResp_02['msg'] != '加购商品不存在':
allure.step("步骤6添加商品2") allure.step("步骤6添加商品2")
AddGoodsResp = self.ymc.add_cart_goods(GetGoodsInfoResp_02, 2, LoginData) AddGoodsResp = ymc.add_cart_goods(GetGoodsInfoResp_02, 2, LoginData)
''' step2随机退购一个商品并结算 ''' ''' step2随机退购一个商品并结算 '''
allure.step("\n步骤7退购一件商品") allure.step("\n步骤7退购一件商品")
GetGoodsInfoList = [GetGoodsInfoResp_01, GetGoodsInfoResp_02] GetGoodsInfoList = [GetGoodsInfoResp_01, GetGoodsInfoResp_02]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤8获取购物车商品信息") allure.step("步骤8获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01, GetGoodsInfoResp_02]) ymc.get_cart_goods_info([GetGoodsInfoResp_01, GetGoodsInfoResp_02])
allure.step("步骤9请求订单结算") allure.step("步骤9请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {self.goods_inputcode2} 不存在") pytest.fail(f"---商品 {goods_inputcode2} 不存在")
pytest.fail(f"---商品 {self.goods_inputcode2} 不存在")
else: else:
LOGGER.info(f"---商品 {self.goods_inputcode1} 不存在") pytest.fail(f"---商品 {goods_inputcode1} 不存在")
pytest.fail(f"---商品 {self.goods_inputcode1} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,58 +3,55 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 游客转会员登录加购2个打折商品退购一个并结算 # @Description:: 游客转会员登录加购2个打折商品退购一个并结算
# @Date:: 2024/11/21 # @Date:: 2024/11/21
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip012-游客转会员登录加购2个打折商品退购一个并结算" DescName = "Vip012-游客转会员登录加购2个打折商品退购一个并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip012(unittest.TestCase): class Test_CVip012(unittest.TestCase):
f'''@Date:: 2024/11/20 f'''@Date:: 2024/11/20
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境2个打折商品 inputcode 分别为
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.sale_goods_inputCode = SaleGoodsInputCode
def test_CVip012_ReturnOfDiscountedProducts(self): @ddt.data(*DataInit)
def test_CVip012_ReturnOfDiscountedProducts(self, data):
allure.dynamic.description(f"描述:{DescName}") allure.dynamic.description(f"描述:{DescName}")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
sale_goods_inputCode = data["SaleGoods"]['goods01']
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
'''step1加购商品x分别加购x件''' '''step1加购商品x分别加购x件'''
allure.step("步骤3获取商品1信息") allure.step("步骤3获取商品1信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(InputCode=self.sale_goods_inputCode) GetGoodsInfoResp_01 = ymc.get_goods_info(InputCode=sale_goods_inputCode)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加商品1") allure.step("步骤4添加商品1")
AddGoodsResp = self.ymc.add_cart_goods(GetGoodsInfoResp_01, 2, LoginData) AddGoodsResp = ymc.add_cart_goods(GetGoodsInfoResp_01, 2, LoginData)
''' step2随机退购一个商品并结算 ''' ''' step2随机退购一个商品并结算 '''
allure.step("\n步骤5退购一件商品") allure.step("\n步骤5退购一件商品")
GetGoodsInfoList = [GetGoodsInfoResp_01] GetGoodsInfoList = [GetGoodsInfoResp_01]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤6获取购物车商品信息") allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01]) ymc.get_cart_goods_info([GetGoodsInfoResp_01])
allure.step("步骤7请求订单结算") allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {self.sale_goods_inputCode} 不存在") pytest.fail(f"---商品 {sale_goods_inputCode} 不存在")
pytest.fail(f"---商品 {self.sale_goods_inputCode} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,85 +3,81 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 游客转会员登录加购2个促销白名单商品退购一个并结算 # @Description:: 游客转会员登录加购2个促销白名单商品退购一个并结算
# @Date:: 2024/11/21 # @Date:: 2024/11/21
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip013-游客转会员登录加购2个促销白名单商品退购一个并结算" DescName = "Vip013-游客转会员登录加购2个促销白名单商品退购一个并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip013(unittest.TestCase): class Test_CVip013(unittest.TestCase):
f'''@Date:: 2024/11/20 f'''@Date:: 2024/11/20
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境促销白名单商品 inputcode 分别为
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time()) @ddt.data(*DataInit)
self.ymc = YMClientApi(ShoppingCartMac) def test_CVip013_ReturnPromotionWhitelistProducts(self,data):
self.yms = YMServiceApi() allure.dynamic.description(f"描述:{DescName}")
self.vip_phone_num = VIPPhoneNumber ymc = YMClientApi(data["ShoppingCartMac"])
self.promotional_whitelist_goods = PromotionalWhitelistGoods yms = YMServiceApi()
self.market_and_store_info = { vip_phone_num = data["VIPPhoneNumber"]
"MarketId": MarketAndStoreDetails["putMarketId"], promotional_whitelist_goods = data["PromotionalWhitelistGoods"]
"StoreId": MarketAndStoreDetails["putStoreId"][0] market_and_store_info = {
"MarketId": data["MarketAndStoreDetails"]["putMarketId"],
"StoreId": data["MarketAndStoreDetails"]["putStoreId"][0]
} }
def test_CVip013_ReturnPromotionWhitelistProducts(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到促销白名单中") allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到促销白名单中")
pre_respomse = self.yms.add_promotional_product_whitelist( pre_respomse = yms.add_promotional_product_whitelist(
self.promotional_whitelist_goods, self.market_and_store_info promotional_whitelist_goods, market_and_store_info
) )
if pre_respomse['data'] is not None: if pre_respomse['data'] is not None:
LOGGER.info(f"---商品 {self.promotional_whitelist_goods['GoodsInputcode']} " LOGGER.info(f"---商品 {promotional_whitelist_goods['GoodsInputcode']} "
f"已添加到促销白名单中") f"已添加到促销白名单中")
allure.step("[业务步骤]:再调用客户端接口,执行加购操作") allure.step("[业务步骤]:再调用客户端接口,执行加购操作")
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
'''step1加购商品x分别加购x件''' '''step1加购商品x分别加购x件'''
allure.step("步骤3获取促销白名单商品信息") allure.step("步骤3获取促销白名单商品信息")
GoodsInfoData1 = self.ymc.get_goods_info(self.promotional_whitelist_goods["GoodsInputcode"]) GoodsInfoData1 = ymc.get_goods_info(promotional_whitelist_goods["GoodsInputcode"])
LOGGER.info(f"---获取的商品信息为:{GoodsInfoData1}") LOGGER.info(f"---获取的商品信息为:{GoodsInfoData1}")
if GoodsInfoData1['data']['weight'] == 0: if GoodsInfoData1['data']['weight'] == 0:
GoodsInfoData1['data']['weight'] = 300 GoodsInfoData1['data']['weight'] = 300
if GoodsInfoData1['msg'] != '加购商品不存在': if GoodsInfoData1['msg'] != '加购商品不存在':
allure.step("步骤4加购白名单商品") allure.step("步骤4加购白名单商品")
AddGoodsResp = self.ymc.add_cart_goods(GoodsInfoData1, 1, LoginData) AddGoodsResp = ymc.add_cart_goods(GoodsInfoData1, 2, LoginData)
LOGGER.info(f"---加购商品返回结果:{AddGoodsResp}") LOGGER.info(f"---加购商品返回结果:{AddGoodsResp}")
''' step2随机退购一个商品并结算 ''' ''' step2随机退购一个商品并结算 '''
allure.step("\n步骤5退购一件商品") allure.step("\n步骤5退购一件商品")
GetGoodsInfoList = [GoodsInfoData1] GetGoodsInfoList = [GoodsInfoData1]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤6获取购物车商品信息") allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData1]) ymc.get_cart_goods_info([GoodsInfoData1])
allure.step("步骤7请求订单结算") allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---商品 {self.promotional_whitelist_goods["GoodsInputcode"]} 不存在")
pytest.fail(f"---商品 {self.promotional_whitelist_goods["GoodsInputcode"]} 不存在")
else:
LOGGER.info(f"---添加商品 {self.promotional_whitelist_goods['GoodsInputcode']} "
f"到促销白名单失败")
pytest.fail(f"---添加商品 {self.promotional_whitelist_goods['GoodsInputcode']} "
f"到促销白名单失败")
def tearDown(self) -> None:
allure.step("[后置处理]:删除添加的促销白名单商品") allure.step("[后置处理]:删除添加的促销白名单商品")
self.yms.delete_whitelist_goods() yms.delete_whitelist_goods()
else:
allure.step("[后置处理]:删除添加的促销白名单商品")
yms.delete_whitelist_goods()
pytest.fail(f"---商品 {promotional_whitelist_goods["GoodsInputcode"]} 不存在")
else:
pytest.fail(f"---添加商品 {promotional_whitelist_goods['GoodsInputcode']} "
f"到促销白名单失败")
if __name__ == '__main__': if __name__ == '__main__':
unittest.main(verbosity=2) unittest.main(verbosity=2)

View File

@ -3,85 +3,82 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 游客转会员登录加购2个重量放通商品退购一个并结算 # @Description:: 游客转会员登录加购2个重量放通商品退购一个并结算
# @Date:: 2024/11/21 # @Date:: 2024/11/21
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip014-游客转会员登录加购2个重量放通商品退购一个并结算" DescName = "Vip014-游客转会员登录加购2个重量放通商品退购一个并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip014(unittest.TestCase): class Test_CVip014(unittest.TestCase):
f'''@Date:: 2024/11/20 f'''@Date:: 2024/11/20
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1武商测试环境重量放通白名单商品 inputcode 分别为
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time()) @ddt.data(*DataInit)
self.ymc = YMClientApi(ShoppingCartMac) def test_CVip014_ReturnWeightOfTheProducte(self,data):
self.yms = YMServiceApi() allure.dynamic.description(f"描述:{DescName}")
self.vip_phone_num = VIPPhoneNumber ymc = YMClientApi(data["ShoppingCartMac"])
self.weight_to_whitelist_goods = WeightToWhitelistGoods yms = YMServiceApi()
self.market_and_store_info = { vip_phone_num = data["VIPPhoneNumber"]
"MarketId": MarketAndStoreDetails["putMarketId"], weight_to_whitelist_goods = data["WeightToWhitelistGoods"]
"StoreId": MarketAndStoreDetails["putStoreId"][0] market_and_store_info = {
"MarketId": data["MarketAndStoreDetails"]["putMarketId"],
"StoreId": data["MarketAndStoreDetails"]["putStoreId"][0]
} }
def test_CVip014_ReturnWeightOfTheProducte(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到重量放通白名单中") allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到重量放通白名单中")
pre_respomse = self.yms.add_weight_to_whitelist( pre_respomse = yms.add_weight_to_whitelist(
self.weight_to_whitelist_goods, self.market_and_store_info weight_to_whitelist_goods, market_and_store_info
) )
if pre_respomse['data'] is not None: if pre_respomse['data'] is not None:
LOGGER.info(f"---商品 {self.weight_to_whitelist_goods['GoodsInputcode']} " LOGGER.info(f"---商品 {weight_to_whitelist_goods['GoodsInputcode']} "
f"已添加到重量放通白名单中") f"已添加到重量放通白名单中")
''' 2-再调用客户端接口,执行加购操作 ''' ''' 2-再调用客户端接口,执行加购操作 '''
allure.step("[业务步骤]:再调用客户端接口,执行加购操作") allure.step("[业务步骤]:再调用客户端接口,执行加购操作")
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
allure.step("步骤3获取重量放通白名单商品信息") allure.step("步骤3获取重量放通白名单商品信息")
GoodsInfoData1 = self.ymc.get_goods_info(self.weight_to_whitelist_goods["GoodsInputcode"]) GoodsInfoData1 = ymc.get_goods_info(weight_to_whitelist_goods["GoodsInputcode"])
LOGGER.info(f"---获取的商品信息为:{GoodsInfoData1}") LOGGER.info(f"---获取的商品信息为:{GoodsInfoData1}")
if GoodsInfoData1['data']['weight'] == 0: if GoodsInfoData1['data']['weight'] == 0:
GoodsInfoData1['data']['weight'] = 400 GoodsInfoData1['data']['weight'] = 400
if GoodsInfoData1['msg'] != '加购商品不存在': if GoodsInfoData1['msg'] != '加购商品不存在':
allure.step("步骤4加购白名单商品") allure.step("步骤4加购白名单商品")
AddGoodsResp = self.ymc.add_cart_goods(GoodsInfoData1, 1, LoginData) AddGoodsResp = ymc.add_cart_goods(GoodsInfoData1, 1, LoginData)
LOGGER.info(f"---加购商品返回结果:{AddGoodsResp}") LOGGER.info(f"---加购商品返回结果:{AddGoodsResp}")
''' step2随机退购一个商品并结算 ''' ''' step2随机退购一个商品并结算 '''
allure.step("\n步骤5退购一件商品") allure.step("\n步骤5退购一件商品")
GetGoodsInfoList = [GoodsInfoData1] GetGoodsInfoList = [GoodsInfoData1]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤6获取购物车商品信息") allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData1]) ymc.get_cart_goods_info([GoodsInfoData1])
allure.step("步骤7请求订单结算") allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
allure.step("[后置处理]:删除添加的重量放通白名单商品")
yms.delete_weight_whitelist_goods()
else: else:
LOGGER.info(f"---商品 {self.weight_to_whitelist_goods["GoodsInputcode"]} 不存在") allure.step("[后置处理]:删除添加的重量放通白名单商品")
pytest.fail(f"---商品 {self.weight_to_whitelist_goods['GoodsInputcode']} 不存在") yms.delete_weight_whitelist_goods()
pytest.fail(f"---商品 {weight_to_whitelist_goods['GoodsInputcode']} 不存在")
else: else:
LOGGER.info(f"---添加商品 {self.weight_to_whitelist_goods['GoodsInputcode']} " pytest.fail(f"---添加商品 {weight_to_whitelist_goods['GoodsInputcode']} "
f"到重量放通白名单失败")
pytest.fail(f"---添加商品 {self.weight_to_whitelist_goods['GoodsInputcode']} "
f"到重量放通白名单失败") f"到重量放通白名单失败")
def tearDown(self) -> None:
allure.step("[后置处理]:删除添加的重量放通白名单商品")
self.yms.delete_weight_whitelist_goods()
if __name__ == '__main__': if __name__ == '__main__':
unittest.main(verbosity=2) unittest.main(verbosity=2)

View File

@ -3,13 +3,13 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 匿名转会员登录,加购计件商品,并结算 # @Description:: 匿名转会员登录,加购计件商品,并结算
# @Date:: 2024/11/22 # @Date:: 2024/11/22
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip015-匿名转会员登录,加购计件商品,并结算" DescName = "Vip015-匿名转会员登录,加购计件商品,并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip015(unittest.TestCase): class Test_CVip015(unittest.TestCase):
f'''@Date:: 2024/11/22 f'''@Date:: 2024/11/22
@ -17,36 +17,36 @@ class Test_CVip015(unittest.TestCase):
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.piece_rate_goods = PieceRateGoods["GoodsInputcode"]
def test_CVip015(self): @ddt.data(*DataInit)
def test_CVip015(self,data):
allure.dynamic.description(f"描述:{DescName}\n") allure.dynamic.description(f"描述:{DescName}\n")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
piece_rate_goods = data["PieceRateGoods"]["GoodsInputcode"]
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
allure.step("步骤3获取商品信息") allure.step("步骤3获取商品信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(self.piece_rate_goods) GetGoodsInfoResp_01 = ymc.get_goods_info(piece_rate_goods)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加会员有优惠商品") allure.step("步骤4添加会员有优惠商品")
self.ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData) ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData)
allure.step("步骤5获取购物车商品信息") allure.step("步骤5获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01]) ymc.get_cart_goods_info([GetGoodsInfoResp_01])
allure.step("步骤6请求订单结算") allure.step("步骤6请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {PieceRateGoods} 不存在") LOGGER.info(f"---商品 {piece_rate_goods} 不存在")
pytest.fail(f"---商品 {PieceRateGoods} 不存在") pytest.fail(f"---商品 {piece_rate_goods} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,58 +3,53 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 匿名转会员登录,加购计件商品,并退购 # @Description:: 匿名转会员登录,加购计件商品,并退购
# @Date:: 2024/11/22 # @Date:: 2024/11/22
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip016-匿名转会员登录,加购计件商品,并退购" DescName = "Vip016-匿名转会员登录,加购计件商品,并退购"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip016(unittest.TestCase): class Test_CVip016(unittest.TestCase):
f'''@Date:: 2024/11/22 f'''@Date:: 2024/11/22
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1步骤
1加购计件或计重商品
2退购一件
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.piece_rate_goods = PieceRateGoods["GoodsInputcode"]
def test_CVip016(self): @ddt.data(*DataInit)
def test_CVip016(self,data):
allure.dynamic.description(f"描述:{DescName}\n") allure.dynamic.description(f"描述:{DescName}\n")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
piece_rate_goods = data["PieceRateGoods"]["GoodsInputcode"]
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
allure.step("步骤3获取商品信息") allure.step("步骤3获取商品信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(self.piece_rate_goods) GetGoodsInfoResp_01 = ymc.get_goods_info(piece_rate_goods)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加会员有优惠商品") allure.step("步骤4添加会员有优惠商品")
AddGoodsResp = self.ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData) AddGoodsResp = ymc.add_cart_goods(GetGoodsInfoResp_01, 10, LoginData)
allure.step("\n步骤7退购一件商品") allure.step("\n步骤7退购一件商品")
GetGoodsInfoList = [GetGoodsInfoResp_01] GetGoodsInfoList = [GetGoodsInfoResp_01]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤5获取购物车商品信息") allure.step("步骤5获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01]) ymc.get_cart_goods_info([GetGoodsInfoResp_01])
allure.step("步骤6请求订单结算") allure.step("步骤6请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {PieceRateGoods} 不存在") pytest.fail(f"---商品 {piece_rate_goods} 不存在")
pytest.fail(f"---商品 {PieceRateGoods} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,13 +3,12 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 匿名转会员登录,加购计重商品,并结算 # @Description:: 匿名转会员登录,加购计重商品,并结算
# @Date:: 2024/11/22 # @Date:: 2024/11/22
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip017-匿名转会员登录,加购计重商品,并结算" DescName = "Vip017-匿名转会员登录,加购计重商品,并结算"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip017(unittest.TestCase): class Test_CVip017(unittest.TestCase):
f'''@Date:: 2024/11/22 f'''@Date:: 2024/11/22
@ -17,36 +16,35 @@ class Test_CVip017(unittest.TestCase):
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.bulk_goods = BulkGoods["GoodsInputcode"]
def test_CVip017(self): @ddt.data(*DataInit)
def test_CVip017(self,data):
allure.dynamic.description(f"描述:{DescName}\n") allure.dynamic.description(f"描述:{DescName}\n")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
bulk_goods = data["MisspellingWeightGoods"]["GoodsInputcode"]
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
allure.step("步骤3获取商品信息") allure.step("步骤3获取商品信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(self.bulk_goods) GetGoodsInfoResp_01 = ymc.get_goods_info(bulk_goods)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加会员有优惠商品") allure.step("步骤4添加会员有优惠商品")
self.ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData) ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData)
allure.step("步骤5获取购物车商品信息") allure.step("步骤5获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01]) ymc.get_cart_goods_info([GetGoodsInfoResp_01])
allure.step("步骤6请求订单结算") allure.step("步骤6请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {BulkGoods} 不存在") pytest.fail(f"---商品 {bulk_goods} 不存在")
pytest.fail(f"---商品 {BulkGoods} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -3,58 +3,53 @@
# @Author:: Arthur Wu # @Author:: Arthur Wu
# @Description:: 匿名转会员登录,加购计重商品,并退购 # @Description:: 匿名转会员登录,加购计重商品,并退购
# @Date:: 2024/11/22 # @Date:: 2024/11/22
import unittest,allure,time,pytest import unittest,allure,time,pytest,ddt
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import * from configs.globalParams import DataInit
DescName = "Vip018-匿名转会员登录,加购计重商品,并退购" DescName = "Vip018-匿名转会员登录,加购计重商品,并退购"
@ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip018(unittest.TestCase): class Test_CVip018(unittest.TestCase):
f'''@Date:: 2024/11/22 f'''@Date:: 2024/11/22
@Author:: Arthur Wu @Author:: Arthur Wu
@Desc:: @Desc::
[购物车客户端] {DescName} [购物车客户端] {DescName}
1步骤
1加购计件或计重商品
2退购一件
''' '''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.bulk_goods = BulkGoods["GoodsInputcode"]
def test_CVip018(self): @ddt.data(*DataInit)
def test_CVip018(self,data):
allure.dynamic.description(f"描述:{DescName}\n") allure.dynamic.description(f"描述:{DescName}\n")
ymc = YMClientApi(data["ShoppingCartMac"])
vip_phone_num = data["VIPPhoneNumber"]
bulk_goods = data["MisspellingWeightGoods"]["GoodsInputcode"]
allure.step("步骤1session开始") allure.step("步骤1session开始")
self.ymc.session_start() ymc.session_start()
allure.step("步骤2匿名登录") allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True} Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01) LoginData = ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录") allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False} Payload02 = {"action": 1, "code": vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02) ymc.login_app_v2(Payload02)
allure.step("步骤3获取商品信息") allure.step("步骤3获取商品信息")
GetGoodsInfoResp_01 = self.ymc.get_goods_info(self.bulk_goods) GetGoodsInfoResp_01 = ymc.get_goods_info(bulk_goods)
if GetGoodsInfoResp_01['msg'] != '加购商品不存在': if GetGoodsInfoResp_01['msg'] != '加购商品不存在':
allure.step("步骤4添加会员有优惠商品") allure.step("步骤4添加会员有优惠商品")
AddGoodsResp = self.ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData) AddGoodsResp = ymc.add_cart_goods(GetGoodsInfoResp_01, 1, LoginData)
allure.step("\n步骤5退购一件商品") allure.step("\n步骤5退购一件商品")
GetGoodsInfoList = [GetGoodsInfoResp_01] GetGoodsInfoList = [GetGoodsInfoResp_01]
self.ymc.delete_cart_goods(GetGoodsInfoList, LoginData, AddGoodsResp) ymc.delete_cart_goods(GetGoodsInfoList, LoginData, [AddGoodsResp])
allure.step("步骤6获取购物车商品信息") allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GetGoodsInfoResp_01]) ymc.get_cart_goods_info([GetGoodsInfoResp_01])
allure.step("步骤7请求订单结算") allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData) ymc.request_order_settlement(LoginData)
else: else:
LOGGER.info(f"---商品 {BulkGoods} 不存在") pytest.fail(f"---商品 {bulk_goods} 不存在")
pytest.fail(f"---商品 {BulkGoods} 不存在")
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -8,6 +8,7 @@ from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ClientApiLib import YMClientApi
from configs.globalParams import DataInit from configs.globalParams import DataInit
DescName = "Vip019-匿名转会员登录,领取优惠券" DescName = "Vip019-匿名转会员登录,领取优惠券"
@ddt.ddt @ddt.ddt
@allure.story(f'[场景测试] {DescName}验证') @allure.story(f'[场景测试] {DescName}验证')
class Test_CVip019(unittest.TestCase): class Test_CVip019(unittest.TestCase):
@ -56,7 +57,5 @@ class Test_CVip019(unittest.TestCase):
pytest.fail(f"购物袋 {goodsbag_mid} 不存在") pytest.fail(f"购物袋 {goodsbag_mid} 不存在")
if __name__ == '__main__': if __name__ == '__main__':
unittest.main(verbosity=2) unittest.main(verbosity=2)