Arthur-Wu committed this file on 2024-11-18
This commit is contained in:
parent
1e74762193
commit
7d3d8cb94f
@ -63,7 +63,7 @@ class YMClientApi(object):
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
return response.json()
|
||||
|
||||
def add_retire_purchase(self, GoodsInfoData, AddPurchaseQuantity, LoginData):
|
||||
def add_cart_goods(self, GoodsInfoData, AddPurchaseQuantity, LoginData):
|
||||
logging.info("========== [加入购物车] add_retire_purchase ==========")
|
||||
payload = json.dumps({
|
||||
"addGoods":[{
|
||||
@ -82,6 +82,115 @@ class YMClientApi(object):
|
||||
response = requests.request("POST", url, headers=self.headerss, data=payload)
|
||||
logging.info(f"-----------接口返回状态码:{response.status_code}")
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
return response.json()
|
||||
|
||||
def delete_cart_goods(self, GoodsInfoData):
|
||||
logging.info("========== [删除购物车商品] delete_cart_goods ==========")
|
||||
payload = json.dumps({
|
||||
"addGoods": [],
|
||||
"autoSelectCoupon": True,
|
||||
"coupons": [],
|
||||
"deleteGoods": [{
|
||||
"inputCode": "6924743915848",
|
||||
"isNormalAddPurchase": True,
|
||||
"qty": 1,
|
||||
"uuid": ["23B2363A224E4933942992F84B937D7D"],
|
||||
"weight": 0
|
||||
}],
|
||||
"existGoods": [{
|
||||
"inputCode": "6924743915848",
|
||||
"isNormalAddPurchase": True,
|
||||
"qty": 1,
|
||||
"uuid": ["23B2363A224E4933942992F84B937D7D"],
|
||||
"weight": 155
|
||||
}],
|
||||
"orderNo": "1858386778027515904"
|
||||
})
|
||||
|
||||
add_2_result = {
|
||||
"code": 0,
|
||||
"msg": "成功",
|
||||
"data": {
|
||||
"remainAmount": "13.8",
|
||||
"totalDisc": "0.0",
|
||||
"orderItemList": [{
|
||||
"uuid": ["2BEDF9C6DD954E1FB3DCD9A9F3C57D29"], #
|
||||
"qty": 1, #
|
||||
"marketPrice": "5",
|
||||
"salePrice": "5.00",
|
||||
"totalSalePrice": "5",
|
||||
"minWeight": 0,
|
||||
"weight": 0,
|
||||
"maxWeight": 0,
|
||||
"goodsPic": "https://ieemoo-storage.obs.cn-east-3.myhuaweicloud.com/lhpic/6925303796426.jpg",
|
||||
"barcode": "6925303796426",
|
||||
"inputCode": "6925303796426",
|
||||
"goodsName": "统一茄皇蕃茄牛肉面",
|
||||
"goodsPromotionTags": null,
|
||||
"measureProperty": 0,
|
||||
"shoppingBagFlag": false,
|
||||
"activityId": null,
|
||||
"activityDescription": null,
|
||||
"totalPromotionPrice": 0,
|
||||
"categoryCode": null,
|
||||
"isOneBarcodeMore": false,
|
||||
"pkgFlag": false
|
||||
},
|
||||
{
|
||||
"uuid": ["F9BBA7C9AF7944FF91C717E3D18BD682"],
|
||||
"qty": 1,
|
||||
"marketPrice": "8.8",
|
||||
"salePrice": "8.80",
|
||||
"totalSalePrice": "8.8",
|
||||
"minWeight": 0,
|
||||
"weight": 0,
|
||||
"maxWeight": 0,
|
||||
"goodsPic": "https://ieemoo-storage.obs.cn-east-3.myhuaweicloud.com/lhpic/6924743915848.jpg",
|
||||
"barcode": "6924743915848",
|
||||
"inputCode": "6924743915848",
|
||||
"goodsName": "乐事无限翡翠黄瓜味薯片",
|
||||
"goodsPromotionTags": null,
|
||||
"measureProperty": 0,
|
||||
"shoppingBagFlag": false,
|
||||
"activityId": null,
|
||||
"activityDescription": null,
|
||||
"totalPromotionPrice": 0,
|
||||
"categoryCode": null,
|
||||
"isOneBarcodeMore": false,
|
||||
"pkgFlag": false
|
||||
}],
|
||||
"bagInfoList": null,
|
||||
"couponMap": null,
|
||||
"activityGoodsList": null
|
||||
}
|
||||
}
|
||||
|
||||
del_201 = {
|
||||
"addGoods": [],
|
||||
"autoSelectCoupon": True,
|
||||
"coupons": [],
|
||||
"deleteGoods": [{
|
||||
"inputCode": "6924743915848",
|
||||
"isNormalAddPurchase": True,
|
||||
"qty": 1,
|
||||
"uuid": ["F9BBA7C9AF7944FF91C717E3D18BD682"],
|
||||
"weight": 0
|
||||
}],
|
||||
"existGoods": [{
|
||||
"inputCode": "6925303796426",
|
||||
"isNormalAddPurchase": True,
|
||||
"qty": 1,
|
||||
"uuid": ["2BEDF9C6DD954E1FB3DCD9A9F3C57D29"],
|
||||
"weight": 165 # GoodsInfoData["data"]["weight"]
|
||||
}, {
|
||||
"inputCode": "6924743915848",
|
||||
"isNormalAddPurchase": True,
|
||||
"qty": 1,
|
||||
"uuid": ["F9BBA7C9AF7944FF91C717E3D18BD682"],
|
||||
"weight": 160 # GoodsInfoData["data"]["weight"]
|
||||
}],
|
||||
"orderNo": "1858386778027515904"
|
||||
}
|
||||
|
||||
def get_coupon_list(self):
|
||||
logging.info("========== [获取优惠券列表] get_coupon_list ==========")
|
||||
@ -116,13 +225,16 @@ class YMClientApi(object):
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
return response.json()
|
||||
|
||||
def get_cart_goods_info(self, GoodsInfoData):
|
||||
def get_cart_goods_info(self, GoodsDataList):
|
||||
logging.info("========== [获取购物车商品信息] get_cart_goods_info ==========")
|
||||
payload = json.dumps({"goodsParamList":[{
|
||||
"inputCode": GoodsInfoData["data"]["inputCode"],
|
||||
"qty": GoodsInfoData["data"]["qty"],
|
||||
"weight": int(GoodsInfoData["data"]["weight"]),
|
||||
}]})
|
||||
goods_param_lList = []
|
||||
for goods_data in GoodsDataList:
|
||||
goods_dict = {}
|
||||
goods_dict["inputCode"] = goods_data["data"]["inputCode"]
|
||||
goods_dict["qty"] = goods_data["data"]["qty"]
|
||||
goods_dict["weight"] = int(goods_data["data"]["weight"])
|
||||
goods_param_lList.append(goods_dict)
|
||||
payload = json.dumps({"goodsParamList": goods_param_lList})
|
||||
url = self.Domain+"/v2/shopping/cart/goods/info"
|
||||
response = requests.request("POST", url, headers=self.headerss, data=payload)
|
||||
logging.info(f"-----------接口返回状态码:{response.status_code}")
|
||||
@ -142,12 +254,6 @@ class YMClientApi(object):
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
return response.json()
|
||||
|
||||
''' 加购购物袋
|
||||
POST
|
||||
https://api.test.yimaogo.com/cart/v2/shopping/add/retire/purchase
|
||||
|
||||
'''
|
||||
|
||||
''' 2- without sessionid '''
|
||||
def get_ads_list(self):
|
||||
logging.info("========== [获取广告列表] get_ads_list ==========")
|
||||
@ -185,7 +291,7 @@ if __name__ == '__main__':
|
||||
CouponListData = ymc.get_coupon_list() # step6:获取优惠券列表
|
||||
ymc.receive_coupon(CouponListData) # step7:领取优惠券
|
||||
ymc.query_coupon_list_user() # step8:查询用户持有的优惠券列表
|
||||
ymc.add_retire_purchase(GoodsInfoData, 1, LoginData) # step9:加购商品 ------ 6924882486100
|
||||
ymc.add_cart_goods(GoodsInfoData, 1, LoginData) # step9:加购商品 ------ 6924882486100
|
||||
ymc.get_cart_goods_info(GoodsInfoData) # step10:获取购物车商品信息
|
||||
ymc.request_order_settlement(LoginData) # step11:请求订单结算
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
import requests,json, time, logging
|
||||
from configs.globalParams import *
|
||||
from commons.SignatureYM import SignatureYM
|
||||
from commons.FileHandler import Txt
|
||||
|
||||
|
||||
class YMServiceApi(object):
|
||||
@ -14,65 +15,105 @@ class YMServiceApi(object):
|
||||
self.headerss = SignatureYM().return_headers()
|
||||
|
||||
''' 1-广告模块 '''
|
||||
def publish_ad(self, ADDetail, MarketAndStoreDetail):
|
||||
def publish_ad(self, ADDetailList, MarketAndStoreDetail):
|
||||
logging.info("========== [发布广告] ==========")
|
||||
timeStamp = str(int(time.time()))
|
||||
PublicParams = {
|
||||
"status": 4, "name": "Auto"+timeStamp,
|
||||
"agencyId": 3, "agencyName": "洪家班", "advertiserId": 3,
|
||||
"advertiserName": "阿宝传媒", "adsUse": 1, "customerTag": 3,
|
||||
"putRangeCycle": "[7,6,5,1,2,3,4]",
|
||||
"addType": 1, "pricingType": 1, "standardPrice": "1", "minPrice": "1",
|
||||
"putStart": GlobalParams["todayDate"], "putEnd": GlobalParams["todayDate"],
|
||||
"putStartTime": "00:00:00", "putEndTime": "23:00:00"
|
||||
}
|
||||
payload = json.dumps(PublicParams | ADDetail | MarketAndStoreDetail)
|
||||
url = self.Domain + "admin/ads"
|
||||
def __publish(ADDetail, MarketAndStoreDetail):
|
||||
timeStamp = str(int(time.time()))
|
||||
PublicParams = {
|
||||
"status": 4, "name": "Auto"+timeStamp,
|
||||
"agencyId": 3, "agencyName": "洪家班", "advertiserId": 3,
|
||||
"advertiserName": "阿宝传媒", "adsUse": 1, "customerTag": 3,
|
||||
"putRangeCycle": "[7,6,5,1,2,3,4]",
|
||||
"addType": 1, "pricingType": 1, "standardPrice": "1", "minPrice": "1",
|
||||
"putStart": GlobalParams["todayDate"], "putEnd": GlobalParams["todayDate"],
|
||||
"putStartTime": "00:00:00", "putEndTime": "23:00:00"
|
||||
}
|
||||
payload = json.dumps(PublicParams | ADDetail | MarketAndStoreDetail)
|
||||
url = self.Domain + "admin/ads"
|
||||
response = requests.request("POST", url, headers=self.headerss, data=payload)
|
||||
logging.info(f"-----------接口返回状态码:{response.status_code}")
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
|
||||
for adDetail in ADDetailList:
|
||||
__publish(adDetail, MarketAndStoreDetail)
|
||||
time.sleep(0.5)
|
||||
|
||||
def add_promotional_product_whitelist(self, GoodsInfo, MarketAndStoreInfo):
|
||||
logging.info("========== [新增促销白名单] ==========")
|
||||
payload = json.dumps({
|
||||
"goodsType": 3,
|
||||
"dataScope": 1,
|
||||
"categoryCode": "",
|
||||
"categoryName": "",
|
||||
"barcode": GoodsInfo["GoodsInputcode"],
|
||||
"goodsName": GoodsInfo["GoodsName"],
|
||||
"storeId": MarketAndStoreInfo["StoreId"],
|
||||
"marketId": MarketAndStoreInfo["MarketId"]
|
||||
})
|
||||
url = self.Domain + "admin/goods/promotion"
|
||||
response = requests.request("POST", url, headers=self.headerss, data=payload)
|
||||
logging.info(f"-----------接口返回状态码:{response.status_code}")
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
if response.status_code == 200:
|
||||
time.sleep(0.5)
|
||||
rspJson = response.json()
|
||||
goodsWhiteListID = rspJson["data"]['id']
|
||||
writeResult = Txt().append_write_txt("ScenarioTest_GoodsWhiteListID.txt", str(goodsWhiteListID))
|
||||
if not writeResult:
|
||||
logging.error(f"---写入 新建促销商品白名单ID 失败!")
|
||||
|
||||
def delete_whitelist_goods(self):
|
||||
logging.info("========== [删除促销白名单商品] ==========")
|
||||
GoodsWhiteListIDList = Txt().read_txt("ScenarioTest_GoodsWhiteListID.txt")
|
||||
for i in range(len(GoodsWhiteListIDList)):
|
||||
if GoodsWhiteListIDList[i] not in [None, '']:
|
||||
url = self.Domain + "admin/goods/promotion/{GoodsWhiteListID}".replace(
|
||||
"{GoodsWhiteListID}", str(GoodsWhiteListIDList[i]))
|
||||
logging.info(f"---删除促销白名单商品接口URL为:: {url}")
|
||||
response = requests.request(method="DELETE", url=url, headers=HEADERS, data={})
|
||||
logging.info(f"---接口返回状态码为:: {response.status_code}")
|
||||
logging.info(f"---接口返回体为:: {response.json()}\n")
|
||||
|
||||
def add_weight_to_whitelist(self, GoodsInfo, MarketAndStoreInfo):
|
||||
logging.info("========== [新增重量放通白名单] ==========")
|
||||
payload = json.dumps({
|
||||
"goodsType": 4,
|
||||
"content": GoodsInfo["GoodsInputcode"],
|
||||
"type": 1,
|
||||
"dataScope": 1,
|
||||
"reason": "自动化测试之场景测试",
|
||||
"storeId": MarketAndStoreInfo["StoreId"],
|
||||
"marketId": MarketAndStoreInfo["MarketId"]
|
||||
})
|
||||
url = self.Domain + "admin/goods/weight/promotion"
|
||||
response = requests.request("POST", url, headers=self.headerss, data=payload)
|
||||
logging.info(f"-----------接口返回状态码:{response.status_code}")
|
||||
logging.info(f"-----------接口返回数据:{response.json()}\n\n")
|
||||
if response.status_code == 200:
|
||||
time.sleep(0.5)
|
||||
rspJson = response.json()
|
||||
weightWhiteListID = rspJson["data"]['id']
|
||||
writeResult = Txt().append_write_txt("ScenarioTest_WeightWhiteListID.txt", str(weightWhiteListID))
|
||||
if not writeResult:
|
||||
logging.error(f"---写入 新建重量放通白名单ID 失败!")
|
||||
|
||||
def delete_weight_whitelist_goods(self):
|
||||
logging.info("========== [删除重量放通白名单商品] ==========")
|
||||
WeightWhiteListIDList = Txt().read_txt("ScenarioTest_WeightWhiteListID.txt")
|
||||
for i in range(len(WeightWhiteListIDList)):
|
||||
if WeightWhiteListIDList[i] not in [None, '']:
|
||||
url = self.Domain + "admin/goods/weight/promotion/{WeightWhiteListID}".replace(
|
||||
"{WeightWhiteListID}", str(WeightWhiteListIDList[i]))
|
||||
logging.info(f"---删除重量放通白名单商品接口URL为:: {url}")
|
||||
response = requests.request(method="DELETE", url=url, headers=self.headerss, data={})
|
||||
logging.info(f"---接口返回状态码为:: {response.status_code}")
|
||||
logging.info(f"---接口返回体为:: {response.json()}\n\n")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
yms = YMServiceApi()
|
||||
''' 武商 '''
|
||||
ADDetail = [
|
||||
{ # 登录页
|
||||
"adsAreaId": 1, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/534ae9d7-3f65-48da-bc2e-3d5e66fe56d8.jpg",
|
||||
"showOrder": 1, "showTime": 5,
|
||||
},
|
||||
{ # 登录后弹窗
|
||||
"adsAreaId": 2, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/93e34d0e-9f4c-499b-ad8b-5741e55528b5.jpg",
|
||||
},
|
||||
{ # 购物车主页
|
||||
"adsAreaId": 3, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/581ec30a-4d90-43f3-b0e9-b5c8fe0006b4.jpg",
|
||||
"showOrder": 1, "showTime": 5,
|
||||
},
|
||||
{ # 待机页
|
||||
"adsAreaId": 4, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/8c8f6de0-6eb7-4b66-98cd-2c85eb057ed5.png",
|
||||
"showOrder": 1, "showTime": 5,
|
||||
},
|
||||
{ # 扫码
|
||||
"adsAreaId": 5, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/9d5555e3-fec1-4e1a-94e7-b517f4e88aba.jpg",
|
||||
},
|
||||
{ # 支付后
|
||||
"adsAreaId": 6, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/e2e2e892-1a81-4b0f-9af2-cb46f04a5dc4.jpg",
|
||||
},
|
||||
{ # 小票
|
||||
"adsAreaId": 7, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/6d9c14ca-3fd1-4fe7-b04a-84cf18937e60.jpg",
|
||||
}
|
||||
]
|
||||
MarketAndStoreDetail = {"putMarketId": 50, "putStoreId": ["29"]}
|
||||
for ad in ADDetail:
|
||||
yms.publish_ad(ad, MarketAndStoreDetail)
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
|
||||
GoodsInfo = {"GoodsInputcode": "6924743915848"}
|
||||
MarketAndStoreInfo = {"MarketId": 50, "StoreId": 29}
|
||||
yms.add_weight_to_whitelist(GoodsInfo, MarketAndStoreInfo)
|
||||
time.sleep(10)
|
||||
yms.delete_weight_whitelist_goods()
|
@ -3,9 +3,21 @@
|
||||
# @Author:: Arthur Wu
|
||||
# @Date:: 2024/11/15-14:46
|
||||
# @Description::
|
||||
''' 武商场景数据集 '''
|
||||
''' 武商场景数据集
|
||||
adsAreaId-1: 登录页广告
|
||||
adsAreaId-2: 登录后弹窗广告
|
||||
adsAreaId-3: 购物车主页广告
|
||||
adsAreaId-4: 待机广告
|
||||
adsAreaId-5: 扫码广告
|
||||
adsAreaId-6: 支付后广告
|
||||
adsAreaId-7: 小票广告
|
||||
'''
|
||||
|
||||
ADDetail = [
|
||||
MarketAndStoreInfo = {"MarketId": 50, "StoreId": 29}
|
||||
|
||||
MarketAndStoreDetail = {"putMarketId": 50, "putStoreId": ["29"]}
|
||||
|
||||
WuShangADDetail = [
|
||||
{
|
||||
"adsAreaId": 1, "mediaType": 1,
|
||||
"mediaUrl": "ads/content/534ae9d7-3f65-48da-bc2e-3d5e66fe56d8.jpg",
|
||||
@ -38,4 +50,4 @@ ADDetail = [
|
||||
"mediaUrl": "ads/content/6d9c14ca-3fd1-4fe7-b04a-84cf18937e60.jpg",
|
||||
}
|
||||
]
|
||||
MarketAndStoreDetail = {"putMarketId": 50, "putStoreId": ["29"]}
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,5 +0,0 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购多件商品,并结算
|
||||
# @Date:: 2021-05-10 16:30:23
|
@ -1,5 +0,0 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购打折商品,并结算
|
||||
# @Date:: 2021-05-10 16:30:22
|
@ -1,5 +0,0 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购促销白名单商品,并结算
|
||||
# @Date:: 2021-05-10 16:30:23
|
@ -1,5 +0,0 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购重量放通商品,并结算
|
||||
# @Date:: 2021-05-10 16:30:22
|
@ -8,7 +8,7 @@ from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C001_CheckADs(unittest.TestCase):
|
||||
class Test_C001_NonLoginCheckADs(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
@ -18,8 +18,8 @@ class Test_C001_CheckADs(unittest.TestCase):
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
|
||||
@allure.story('[购物车客户端] 广告验证')
|
||||
def test_C001_CheckADs(self):
|
||||
@allure.story('[场景测试] 001-购物车客户端-广告验证')
|
||||
def test_C001_NonLoginCheckADs(self):
|
||||
allure.dynamic.description("描述:购物车客户端-广告验证")
|
||||
AdListData = self.ymc.get_ads_list()
|
||||
if "error_msg" not in AdListData:
|
@ -8,7 +8,7 @@ from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
class Test_C002_NonVipAddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
@ -20,9 +20,9 @@ class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
|
||||
@allure.story('[购物车客户端] 加购购物袋并试算验证-01')
|
||||
def test_C00201_AddShoppingBagAndSettlePayment(self):
|
||||
allure.dynamic.description("描述:加购中号购物袋")
|
||||
@allure.story('[场景测试] 00201-非会员加购购物袋并试算验证-01')
|
||||
def test_C00201_NonVipAddShoppingBagAndSettlePayment(self):
|
||||
allure.dynamic.description("描述:非会员加购中号购物袋")
|
||||
allure.step("步骤1:session开始")
|
||||
self.ymc.session_start()
|
||||
allure.step("步骤2:匿名登录")
|
||||
@ -31,15 +31,15 @@ class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
allure.step("步骤3:获取商品信息")
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=6971648922990)
|
||||
allure.step("步骤4:添加购物袋")
|
||||
self.ymc.add_retire_purchase(GoodsInfoData, 2, LoginData)
|
||||
self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData)
|
||||
allure.step("步骤5:获取购物车商品信息")
|
||||
self.ymc.get_cart_goods_info(GoodsInfoData)
|
||||
self.ymc.get_cart_goods_info([GoodsInfoData])
|
||||
allure.step("步骤6:请求订单结算")
|
||||
self.ymc.request_order_settlement(LoginData)
|
||||
|
||||
@allure.story('[购物车客户端] 加购购物袋并试算验证-02')
|
||||
@allure.story('[场景测试] 00202-非会员加购购物袋并试算验证-02')
|
||||
def test_C00202_AddShoppingBagAndSettlePayment(self):
|
||||
allure.dynamic.description("描述:加购大号购物袋")
|
||||
allure.dynamic.description("描述:非会员加购大号购物袋")
|
||||
allure.step("步骤1:session开始")
|
||||
self.ymc.session_start()
|
||||
allure.step("步骤2:匿名登录")
|
||||
@ -48,9 +48,9 @@ class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
allure.step("步骤3:获取商品信息")
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=6971648922983)
|
||||
allure.step("步骤4:添加购物袋")
|
||||
self.ymc.add_retire_purchase(GoodsInfoData, 2, LoginData)
|
||||
self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData)
|
||||
allure.step("步骤5:获取购物车商品信息")
|
||||
self.ymc.get_cart_goods_info(GoodsInfoData)
|
||||
self.ymc.get_cart_goods_info([GoodsInfoData])
|
||||
allure.step("步骤6:请求订单结算")
|
||||
self.ymc.request_order_settlement(LoginData)
|
||||
|
@ -8,10 +8,10 @@ from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
class Test_C003_NonVipAddNonDiscountedProductsForPurchaset(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
@Desc:: test_C003_NonVipAddNonDiscountedProductsForPurchase
|
||||
[购物车客户端] 加购无优惠商品并试算验证
|
||||
1、武商测试环境,普通无优惠商品inputcode为:
|
||||
6924743915848
|
||||
@ -19,21 +19,22 @@ class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
self.vip_goods_inputcode = "6924743915848" # 乐事薯片
|
||||
|
||||
@allure.story('[购物车客户端] 加购无优惠商品并试算验证-01')
|
||||
def test_C00201_AddShoppingBagAndSettlePayment(self):
|
||||
allure.dynamic.description("描述:加购无优惠商品")
|
||||
@allure.story('[场景测试] 003-非会员加购无优惠商品并试算验证-01')
|
||||
def test_C003_NonVipAddNonDiscountedProductsForPurchase(self):
|
||||
allure.dynamic.description("描述:非会员加购无优惠商品")
|
||||
allure.step("步骤1:session开始")
|
||||
self.ymc.session_start()
|
||||
allure.step("步骤2:匿名登录")
|
||||
Payload01 = {"action": 0, "isAnon": True}
|
||||
LoginData = self.ymc.login_app_v2(Payload01)
|
||||
allure.step("步骤3:获取商品信息")
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=6924743915848)
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=self.vip_goods_inputcode)
|
||||
allure.step("步骤4:添加无优惠商品")
|
||||
self.ymc.add_retire_purchase(GoodsInfoData, 5, LoginData)
|
||||
self.ymc.add_cart_goods(GoodsInfoData, 5, LoginData)
|
||||
allure.step("步骤5:获取购物车商品信息")
|
||||
self.ymc.get_cart_goods_info(GoodsInfoData)
|
||||
self.ymc.get_cart_goods_info([GoodsInfoData])
|
||||
allure.step("步骤6:请求订单结算")
|
||||
self.ymc.request_order_settlement(LoginData)
|
||||
|
||||
|
@ -8,32 +8,35 @@ from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C002_AddShoppingBagAndSettlePayment(unittest.TestCase):
|
||||
class Test_C004_NonVipAddMemberPproductsForPurchase(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
[购物车客户端] 加购无优惠商品并试算验证
|
||||
1、武商测试环境,普通无优惠商品inputcode为:
|
||||
6924743915848
|
||||
[购物车客户端] 加购会员商品并结算验证
|
||||
1、武商测试环境,会员有优惠商品inputcode为:
|
||||
!!!!会员有优惠商品暂未提供
|
||||
'''
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
# 会员有优惠商品暂未提供
|
||||
self.vip_goods_inputcode = "6924743915848" # 乐事薯片
|
||||
self.vip_goods_inputcode = "6925303796426" # 统一番茄牛肉面
|
||||
|
||||
@allure.story('[购物车客户端] 加购无优惠商品并试算验证-01')
|
||||
def test_C00201_AddShoppingBagAndSettlePayment(self):
|
||||
allure.dynamic.description("描述:加购无优惠商品")
|
||||
@allure.story('[场景测试] 004-非会员加购会员商品并结算验证-01')
|
||||
def test_C004_NonVipAddMemberPproductsForPurchase(self):
|
||||
allure.dynamic.description("描述:非会员加购会员有优惠商品")
|
||||
allure.step("步骤1:session开始")
|
||||
self.ymc.session_start()
|
||||
allure.step("步骤2:匿名登录")
|
||||
Payload01 = {"action": 0, "isAnon": True}
|
||||
LoginData = self.ymc.login_app_v2(Payload01)
|
||||
allure.step("步骤3:获取商品信息")
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=6924743915848)
|
||||
allure.step("步骤4:添加无优惠商品")
|
||||
self.ymc.add_retire_purchase(GoodsInfoData, 5, LoginData)
|
||||
GoodsInfoData = self.ymc.get_goods_info(InputCode=self.vip_goods_inputcode)
|
||||
allure.step("步骤4:添加会员有优惠商品")
|
||||
self.ymc.add_cart_goods(GoodsInfoData, 1, LoginData)
|
||||
allure.step("步骤5:获取购物车商品信息")
|
||||
self.ymc.get_cart_goods_info(GoodsInfoData)
|
||||
self.ymc.get_cart_goods_info([GoodsInfoData])
|
||||
allure.step("步骤6:请求订单结算")
|
||||
self.ymc.request_order_settlement(LoginData)
|
||||
|
||||
|
@ -0,0 +1,47 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购多件商品并结算
|
||||
# @Date:: 2021-05-10 16:30:23
|
||||
import unittest,allure,time
|
||||
from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C005_NonVipAddMultipleItemsForPurchase(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
[购物车客户端] 加购多件商品并结算 验证
|
||||
1、武商测试环境,多件商品的 inputcode 分别为:
|
||||
'''
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
self.vip_goods_inputcode1 = "6924743915848" # 乐事薯片
|
||||
self.vip_goods_inputcode2 = "6925303796426" # 统一番茄牛肉面
|
||||
|
||||
@allure.story('[场景测试] 005-非会员加购会员商品并结算验证')
|
||||
def test_C005_NonVipAddMultipleItemsForPurchase(self):
|
||||
allure.dynamic.description("描述:非会员加购会员有优惠商品")
|
||||
allure.step("步骤1:session开始")
|
||||
self.ymc.session_start()
|
||||
allure.step("步骤2:匿名登录")
|
||||
Payload01 = {"action": 0, "isAnon": True}
|
||||
LoginData = self.ymc.login_app_v2(Payload01)
|
||||
allure.step("步骤3:获取商品1信息")
|
||||
GoodsInfoData1 = self.ymc.get_goods_info(InputCode=self.vip_goods_inputcode1)
|
||||
allure.step("步骤4:添加商品1")
|
||||
self.ymc.add_cart_goods(GoodsInfoData1, 1, LoginData)
|
||||
allure.step("步骤5:获取商品2信息")
|
||||
GoodsInfoData2 = self.ymc.get_goods_info(InputCode=self.vip_goods_inputcode2)
|
||||
allure.step("步骤6:添加商品2")
|
||||
self.ymc.add_cart_goods(GoodsInfoData2, 1, LoginData)
|
||||
allure.step("步骤7:获取购物车商品信息")
|
||||
self.ymc.get_cart_goods_info([GoodsInfoData1, GoodsInfoData2])
|
||||
allure.step("步骤8:请求订单结算")
|
||||
self.ymc.request_order_settlement(LoginData)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main(verbosity=2)
|
@ -0,0 +1,45 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购打折商品并结算
|
||||
# @Date:: 2021-05-10 16:30:22
|
||||
import unittest,allure,time
|
||||
from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
|
||||
|
||||
class Test_C006_NonVipAddDiscountedProductsForPurchaset(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
[购物车客户端] 加购打折商品并结算 验证
|
||||
1、武商测试环境,会员有优惠商品inputcode为:
|
||||
!!!!折扣商品暂未提供
|
||||
'''
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
# 折扣商品暂未提供
|
||||
self.vip_goods_inputcode1 = "6924743915848" # 乐事薯片
|
||||
|
||||
@allure.story('[场景测试] 006-非会员加购打折商品并结算-01')
|
||||
def test_C006_NonVipAddDiscountedProductsForPurchase(self):
|
||||
allure.dynamic.description("描述:非会员加购打折商品并结算")
|
||||
allure.step("步骤1:session开始")
|
||||
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(InputCode=self.vip_goods_inputcode1)
|
||||
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)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main(verbosity=2)
|
@ -0,0 +1,54 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购促销白名单商品并结算
|
||||
# @Date:: 2021-05-10 16:30:23
|
||||
import unittest,allure,time
|
||||
from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
from YiMao.businessFunc.ServiceApiLib import YMServiceApi
|
||||
|
||||
|
||||
class Test_C007_NonVipAddPromotionalWhitelistProducts(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc:: test_C007_NonVipAddPromotionalWhitelistProducts
|
||||
[购物车客户端] 加购促销白名单商品并结算 验证
|
||||
1、武商测试环境,促销白名单商品inputcode为:
|
||||
6925303796426
|
||||
'''
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
self.yms = YMServiceApi()
|
||||
# 促销白名单商品暂未提供
|
||||
|
||||
@allure.story('[场景测试] 007-非会员加购促销白名单商品并结算')
|
||||
def test_C007_NonVipAddPromotionalWhitelistProducts(self):
|
||||
allure.dynamic.description("描述:非会员加购促销白名单商品并结算")
|
||||
allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到促销白名单中")
|
||||
GoodsInfo = {"GoodsInputcode": "6925303796426", "GoodsName": "统一茄皇蕃茄牛肉面"}
|
||||
MarketAndStoreInfo = {"MarketId": 50, "StoreId": 29}
|
||||
self.yms.add_promotional_product_whitelist(GoodsInfo, MarketAndStoreInfo)
|
||||
|
||||
allure.step("[业务步骤]:再调用客户端接口,执行加购操作")
|
||||
allure.step("步骤1:session开始")
|
||||
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(InputCode=GoodsInfo["GoodsInputcode"])
|
||||
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)
|
||||
|
||||
allure.step("[后置处理]:删除添加的促销白名单商品")
|
||||
self.yms.delete_whitelist_goods()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main(verbosity=2)
|
@ -0,0 +1,55 @@
|
||||
# !/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
# @Author:: Arthur Wu
|
||||
# @Description:: 游客登录,加购重量放通商品并结算
|
||||
# @Date:: 2021-05-10 16:30:22
|
||||
import unittest,allure,time
|
||||
from configs.globalObj import LOGGER
|
||||
from YiMao.businessFunc.ClientApiLib import YMClientApi
|
||||
from YiMao.businessFunc.ServiceApiLib import YMServiceApi
|
||||
|
||||
|
||||
class Test_C008_NonVipAddWeightToTheProduct(unittest.TestCase):
|
||||
'''@Date:: 2024/11/15
|
||||
@Author:: Arthur Wu
|
||||
@Desc::
|
||||
[购物车客户端] 加购重量放通商品并结算 验证
|
||||
1、武商测试环境,重量放通商品inputcode为:
|
||||
6924743915848
|
||||
'''
|
||||
def setUp(self) -> None:
|
||||
self.timestamp = int(time.time())
|
||||
self.ymc = YMClientApi()
|
||||
self.yms = YMServiceApi()
|
||||
# 重量放通白名单商品暂未提供
|
||||
|
||||
@allure.story('[场景测试] 008-非会员加购重量放通商品并结算')
|
||||
def test_C008_NonVipAddWeightToTheProduct(self):
|
||||
allure.dynamic.description("描述:非会员加购重量放通商品并结算")
|
||||
allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到重量放通白名单中")
|
||||
GoodsInfo = {"GoodsInputcode": "6924743915848", "GoodsName": "乐事无限翡翠黄瓜味薯片"}
|
||||
MarketAndStoreInfo = {"MarketId": 50, "StoreId": 29}
|
||||
self.yms.add_weight_to_whitelist(GoodsInfo, MarketAndStoreInfo)
|
||||
|
||||
''' 2-再调用客户端接口,执行加购操作 '''
|
||||
allure.step("[业务步骤]:再调用客户端接口,执行加购操作")
|
||||
allure.step("步骤1:session开始")
|
||||
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(InputCode=GoodsInfo["GoodsInputcode"])
|
||||
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)
|
||||
|
||||
allure.step("[后置处理]:删除添加的重量放通白名单商品")
|
||||
self.yms.delete_weight_whitelist_goods()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main(verbosity=2)
|
Loading…
x
Reference in New Issue
Block a user