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

This commit is contained in:
ieemoo
2024-11-25 18:17:44 +08:00
parent 1fd2bf9c4e
commit a18431f788
33 changed files with 6 additions and 162 deletions

View File

@ -64,13 +64,17 @@ class Test_CAnon010(unittest.TestCase):
AddGoodsInfoAfterDel[k] = v - v2
LOGGER.info(f"---退购商品后,剩余商品及其数量为:{AddGoodsInfoAfterDel}\n")
last_cart_goods_info = []
cart_goods_info = [GetGoodsInfoResp_01, GetGoodsInfoResp_02]
for goods_info in cart_goods_info:
if goods_info['data']['inputCode'] in AddGoodsInfoAfterDel.keys():
goods_info['data']['qty'] = AddGoodsInfoAfterDel[goods_info['data']['inputCode']]
if goods_info['data']['qty'] != 0:
last_cart_goods_info.append(goods_info)
else:
last_cart_goods_info.append(goods_info)
allure.step("步骤8获取购物车商品信息")
ymc.get_cart_goods_info(cart_goods_info)
ymc.get_cart_goods_info(last_cart_goods_info)
allure.step("步骤9请求订单结算")
ymc.request_order_settlement(LoginData)
else:

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,40 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Date:: 2024/11/15-14:43
# @Description::
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "NoLogin001-购物车客户端-广告"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CNoLogin001(unittest.TestCase):
f'''@Date:: 2024/11/15
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
'''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
def test_CNoLogin001_CheckADs(self):
allure.dynamic.description(f"描述:{DescName}")
AdListData = self.ymc.get_ads_list()
if AdListData['data'] != []:
if "error_msg" not in AdListData:
adIdList = []
for ad in AdListData['data']:
adIdList.append(ad['id'])
LOGGER.info(f"---adIdList: {adIdList}---\n")
for adId in adIdList:
self.ymc.query_ad_detail(str(adId))
else:
LOGGER.info(f"---该商超未配置广告---\n")
pytest.fail(f"---该商超未配置广告---\n")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

@ -1,82 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购购物袋,并结算
# @Date:: 2024/11/20
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "Vip001-游客转会员登录,加购购物袋,并结算"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip001_AddShoppingBagAndSettlePayment(unittest.TestCase):
f'''@Date:: 2024/11/20
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
1、武商测试环境购物袋inputcode为
6971648922990、6971648922983
'''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.goodsbag_mid = GoodsBagInputcode_mid
self.goodsbag_max = GoodsBagInputcode_max
def test_CVip00101_AddMidShoppingbagsForPurchase(self):
allure.dynamic.description(f"描述:加购中号购物袋")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤4获取商品信息")
GoodsInfoData = self.ymc.get_goods_info(self.goodsbag_mid)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤5添加购物袋")
self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData)
allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---购物袋 {self.goodsbag_mid} 不存在")
pytest.fail(f"---购物袋 {self.goodsbag_mid} 不存在")
def test_CVip00102_AddMaxShoppingbagsForPurchase(self):
allure.dynamic.description("描述:加购大号购物袋")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤4获取商品信息")
GoodsInfoData = self.ymc.get_goods_info(self.goodsbag_max)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤5添加购物袋")
self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData)
allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---购物袋 {self.goodsbag_max} 不存在")
pytest.fail(f"购物袋 {self.goodsbag_max} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

@ -1,55 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购普通商品,并结算
# @Date:: 2024/11/20
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "Vip002-游客转会员登录,加购普通商品,并结算"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip002(unittest.TestCase):
f'''@Date:: 2024/11/15
@Author:: Arthur Wu
@Desc:: test_C003_NonVipAddNonDiscountedProductsForPurchase
[购物车客户端] {DescName}
1、武商测试环境普通无优惠商品inputcode为
6924743915848
'''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.NormalGoodsInputcode01 = NormalGoodsInputcode01
def test_CVip002_AddNonDiscountedProductsForPurchase(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤4获取商品信息")
GoodsInfoData = self.ymc.get_goods_info(InputCode=self.NormalGoodsInputcode01)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤5添加无优惠商品")
self.ymc.add_cart_goods(GoodsInfoData, 5, LoginData)
allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---商品 {self.NormalGoodsInputcode01} 不存在")
pytest.fail(f"---商品 {self.NormalGoodsInputcode01} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

@ -1,55 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购会员商品,并结算
# @Date:: 2024/11/20
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "Vip003-游客转会员登录,加购会员商品,并结算"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip003(unittest.TestCase):
f'''@Date:: 2024/11/20
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
1、武商测试环境会员有优惠商品inputcode为
!!!!会员有优惠商品暂未提供
'''
def setUp(self) -> None:
self.timestamp = int(time.time())
self.ymc = YMClientApi(ShoppingCartMac)
self.vip_phone_num = VIPPhoneNumber
self.vip_goods_inputcode = VipGoodsInputcode
def test_CVip003_AddMemberProductsForPurchase(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤4获取商品信息")
GoodsInfoData = self.ymc.get_goods_info(self.vip_goods_inputcode)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤5添加会员有优惠商品")
self.ymc.add_cart_goods(GoodsInfoData, 1, LoginData)
allure.step("步骤6获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤7请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---商品 {self.vip_goods_inputcode} 不存在")
pytest.fail(f"---商品 {self.vip_goods_inputcode} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

@ -1,63 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购多件商品,并结算
# @Date:: 2024/11/20
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "Vip004-游客转会员登录,加购多件商品,并结算"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip004(unittest.TestCase):
f'''@Date:: 2024/11/15
@Author:: Arthur Wu
@Desc::
[购物车客户端] {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_CVip004_AddMultipleItemsForPurchase(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤4获取商品1信息")
GoodsInfoData1 = self.ymc.get_goods_info(InputCode=self.goods_inputcode1)
if GoodsInfoData1['msg'] != '加购商品不存在':
allure.step("步骤5添加商品1")
self.ymc.add_cart_goods(GoodsInfoData1, 1, LoginData)
allure.step("步骤6获取商品2信息")
GoodsInfoData2 = self.ymc.get_goods_info(InputCode=self.goods_inputcode2)
if GoodsInfoData2['msg'] != '加购商品不存在':
allure.step("步骤7添加商品2")
self.ymc.add_cart_goods(GoodsInfoData2, 1, LoginData)
allure.step("步骤8获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData1, GoodsInfoData2])
allure.step("步骤9请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---商品 {self.goods_inputcode2} 不存在")
pytest.fail(f"---商品 {self.goods_inputcode2} 不存在")
else:
LOGGER.info(f"---商品 {self.goods_inputcode1} 不存在")
pytest.fail(f"---商品 {self.goods_inputcode1} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

@ -1,55 +0,0 @@
# !/usr/bin/python
# -*- coding: utf-8 -*-
# @Author:: Arthur Wu
# @Description:: 游客转会员登录,加购打折商品,并结算
# @Date:: 2024/11/21
import unittest,allure,time,pytest
from configs.globalObj import LOGGER
from YiMao.businessFunc.ClientApiLib import YMClientApi
from YiMao.data.WuShangSceneTestData import *
DescName = "Vip005-游客转会员登录,加购打折商品,并结算"
@allure.story(f'[场景测试] {DescName}验证')
class Test_CVip005(unittest.TestCase):
f'''@Date:: 2024/11/21
@Author:: Arthur Wu
@Desc::
[购物车客户端] {DescName}
1、武商测试环境会员有优惠商品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_CVip005_AddDiscountedProductsForPurchase(self):
allure.dynamic.description(f"描述:{DescName}")
allure.step("步骤1session开始")
self.ymc.session_start()
allure.step("步骤2匿名登录")
Payload01 = {"action": 0, "isAnon": True}
LoginData = self.ymc.login_app_v2(Payload01)
allure.step("步骤3切换会员登录")
Payload02 = {"action": 1, "code": self.vip_phone_num, "isAnon": False}
self.ymc.login_app_v2(Payload02)
allure.step("步骤3获取折扣商品信息")
GoodsInfoData = self.ymc.get_goods_info(InputCode=self.sale_goods_inputCode)
if GoodsInfoData['msg'] != '加购商品不存在':
allure.step("步骤4加购折扣商品")
self.ymc.add_cart_goods(GoodsInfoData, 1, LoginData)
allure.step("步骤5获取购物车商品信息")
self.ymc.get_cart_goods_info([GoodsInfoData])
allure.step("步骤6请求订单结算")
self.ymc.request_order_settlement(LoginData)
else:
LOGGER.info(f"---商品 {self.sale_goods_inputCode} 不存在")
pytest.fail(f"---商品 {self.sale_goods_inputCode} 不存在")
if __name__ == '__main__':
unittest.main(verbosity=2)

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,62 +0,0 @@
# !/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)