diff --git a/YiMao/debugLib/__init__.py b/YiMao/ZeroLib/__init__.py similarity index 100% rename from YiMao/debugLib/__init__.py rename to YiMao/ZeroLib/__init__.py diff --git a/YiMao/ZeroLib/demo1024.py b/YiMao/ZeroLib/demo1024.py new file mode 100644 index 0000000..6709dda --- /dev/null +++ b/YiMao/ZeroLib/demo1024.py @@ -0,0 +1,155 @@ +# ZeroLib +# 2021/10/24 14:50:49 +'''debug demo''' + + +''' 获取商品信息接口返回数据 +v2/shopping/{inputCode} +''' +get_goods_info = { + 'code': 0, + 'msg': '成功', + 'data': { + 'flowId': None, + 'goodsDetailList': None, + 'barcode': '6925303796426', + 'inputCode': '6925303796426', # 提取 + 'categoryCode': '1203010107', + 'goodsName': '统一茄皇蕃茄牛肉面', + 'goodsCode': '714479', + 'goodsSpec': '90020', + 'goodsPic': 'https://ieemoo-storage.obs.cn-east-3.myhuaweicloud.com/lhpic/6925303796426.jpg', + 'measureProperty': 0, + 'measureUnit': '桶', + 'minWeight': 132, + 'maxWeight': 198, + 'weight': 165.0, # 提取 + 'price': '0.0', + 'promotePrice': '5.0', + 'shoppingBag': False, + 'promotion': True, + 'qty': '1', + 'pkgFlag': False, + 'goodsBrand': None + } +} + +''' 加购商品到购物车接口返回数据 +shopping/add/retire/purchase +''' +add_goods_info = { + 'code': 0, + 'msg': '成功', + 'data': { + 'remainAmount': '13.8', + 'totalDisc': '0.0', + 'orderItemList': [ + { + 'uuid': ['C186D05F375E4E2F99078456CA809C59'], + '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': None, + 'measureProperty': 0, + 'shoppingBagFlag': False, + 'activityId': None, + 'activityDescription': None, + 'totalPromotionPrice': 0, + 'categoryCode': None, + 'isOneBarcodeMore': False, + 'pkgFlag': False + }, { + 'uuid': ['D7D17C541D7D4006B675D97B9D2B1C99'], + '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': None, + 'measureProperty': 0, + 'shoppingBagFlag': False, + 'activityId': None, + 'activityDescription': None, + 'totalPromotionPrice': 0, + 'categoryCode': None, + 'isOneBarcodeMore': False, + 'pkgFlag': False + }], + 'bagInfoList': None, + 'couponMap': None, + 'activityGoodsList': None + } +} + +# 加购购物嗲 +add_shoppingbag_info = { + 'code': 0, + 'msg': '成功', + 'data': { + 'remainAmount': '4.0', + 'totalDisc': '0.0', + 'orderItemList': None, + 'bagInfoList': [ + { + 'uuid': ['9C05055A6CD941ECAB377E3E84DA9AE0'], + 'qty': 2, + 'marketPrice': '0.8', + 'salePrice': '0.80', + 'totalSalePrice': '1.6', + 'minWeight': 0, + 'weight': 0, + 'maxWeight': 0, + 'goodsPic': 'https://ieemoo-storage.obs.cn-east-3.myhuaweicloud.com/lhpic/6971648922990.jpg', + 'barcode': '6971648922990', + 'inputCode': '6971648922990', + 'goodsName': '武商优家可降解购物袋中号', + 'goodsPromotionTags': None, + 'measureProperty': 0, + 'shoppingBagFlag': True, + 'activityId': None, + 'activityDescription': None, + 'totalPromotionPrice': 0, + 'categoryCode': None, + 'isOneBarcodeMore': False, + 'pkgFlag': False + }, { + 'uuid': ['9B5E7B5CD322490DB318B4FD899E6906'], + 'qty': 2, + 'marketPrice': '1.2', + 'salePrice': '1.20', + 'totalSalePrice': '2.4', + 'minWeight': 0, + 'weight': 0, + 'maxWeight': 0, + 'goodsPic': 'https://ieemoo-storage.obs.cn-east-3.myhuaweicloud.com/lhpic/6971648922983.jpg', + 'barcode': '6971648922983', + 'inputCode': '6971648922983', + 'goodsName': '武商优家可降解购物袋大号', + 'goodsPromotionTags': None, + 'measureProperty': 0, + 'shoppingBagFlag': True, + 'activityId': None, + 'activityDescription': None, + 'totalPromotionPrice': 0, + 'categoryCode': None, + 'isOneBarcodeMore': False, + 'pkgFlag': False + }], + 'couponMap': None, + 'activityGoodsList': None + } +} \ No newline at end of file diff --git a/YiMao/debugLib/test_C020_NonToVipAddDiscountedProductsForPurchase.py b/YiMao/ZeroLib/test_C020_NonToVipAddDiscountedProductsForPurchase.py similarity index 100% rename from YiMao/debugLib/test_C020_NonToVipAddDiscountedProductsForPurchase.py rename to YiMao/ZeroLib/test_C020_NonToVipAddDiscountedProductsForPurchase.py diff --git a/YiMao/debugLib/test_C021_NonToVipAddPromotionalWhitelistProducts.py b/YiMao/ZeroLib/test_C021_NonToVipAddPromotionalWhitelistProducts.py similarity index 100% rename from YiMao/debugLib/test_C021_NonToVipAddPromotionalWhitelistProducts.py rename to YiMao/ZeroLib/test_C021_NonToVipAddPromotionalWhitelistProducts.py diff --git a/YiMao/debugLib/test_C022_NonToVipAddWeightToTheProduct.py b/YiMao/ZeroLib/test_C022_NonToVipAddWeightToTheProduct.py similarity index 100% rename from YiMao/debugLib/test_C022_NonToVipAddWeightToTheProduct.py rename to YiMao/ZeroLib/test_C022_NonToVipAddWeightToTheProduct.py diff --git a/YiMao/debugLib/test_C023_NonToVipReturnShoppingBag.py b/YiMao/ZeroLib/test_C023_NonToVipReturnShoppingBag.py similarity index 100% rename from YiMao/debugLib/test_C023_NonToVipReturnShoppingBag.py rename to YiMao/ZeroLib/test_C023_NonToVipReturnShoppingBag.py diff --git a/YiMao/debugLib/test_C024_NonToVipReturnPurchaseOfOrdinaryGoods.py b/YiMao/ZeroLib/test_C024_NonToVipReturnPurchaseOfOrdinaryGoods.py similarity index 100% rename from YiMao/debugLib/test_C024_NonToVipReturnPurchaseOfOrdinaryGoods.py rename to YiMao/ZeroLib/test_C024_NonToVipReturnPurchaseOfOrdinaryGoods.py diff --git a/YiMao/debugLib/test_C025_NonToVipReturnOfMemberProducts.py b/YiMao/ZeroLib/test_C025_NonToVipReturnOfMemberProducts.py similarity index 100% rename from YiMao/debugLib/test_C025_NonToVipReturnOfMemberProducts.py rename to YiMao/ZeroLib/test_C025_NonToVipReturnOfMemberProducts.py diff --git a/YiMao/debugLib/test_C026_NonToVipReturnOneItemFromMultiplePurchases.py b/YiMao/ZeroLib/test_C026_NonToVipReturnOneItemFromMultiplePurchases.py similarity index 100% rename from YiMao/debugLib/test_C026_NonToVipReturnOneItemFromMultiplePurchases.py rename to YiMao/ZeroLib/test_C026_NonToVipReturnOneItemFromMultiplePurchases.py diff --git a/YiMao/debugLib/test_C027_NonToVipReturnOfDiscountedProducts.py b/YiMao/ZeroLib/test_C027_NonToVipReturnOfDiscountedProducts.py similarity index 100% rename from YiMao/debugLib/test_C027_NonToVipReturnOfDiscountedProducts.py rename to YiMao/ZeroLib/test_C027_NonToVipReturnOfDiscountedProducts.py diff --git a/YiMao/debugLib/test_C028_NonToVipReturnPromotionWhitelistProducts.py b/YiMao/ZeroLib/test_C028_NonToVipReturnPromotionWhitelistProducts.py similarity index 100% rename from YiMao/debugLib/test_C028_NonToVipReturnPromotionWhitelistProducts.py rename to YiMao/ZeroLib/test_C028_NonToVipReturnPromotionWhitelistProducts.py diff --git a/YiMao/debugLib/test_C029_NonToVipReturnWeightOfTheProducte.py b/YiMao/ZeroLib/test_C029_NonToVipReturnWeightOfTheProducte.py similarity index 100% rename from YiMao/debugLib/test_C029_NonToVipReturnWeightOfTheProducte.py rename to YiMao/ZeroLib/test_C029_NonToVipReturnWeightOfTheProducte.py diff --git a/YiMao/debugLib/test_C030_VipReceiveCoupon.py b/YiMao/ZeroLib/test_C030_NonToVipReceiveCoupon.py similarity index 100% rename from YiMao/debugLib/test_C030_VipReceiveCoupon.py rename to YiMao/ZeroLib/test_C030_NonToVipReceiveCoupon.py diff --git a/YiMao/businessFunc/ClientApiLib.py b/YiMao/businessFunc/ClientApiLib.py index 0e049f5..dd3c7df 100644 --- a/YiMao/businessFunc/ClientApiLib.py +++ b/YiMao/businessFunc/ClientApiLib.py @@ -86,7 +86,7 @@ class YMClientApi(object): return response.json() def add_cart_goods(self, GoodsInfoData, AddPurchaseQuantity, LoginData): - logging.info("========== [加入购物车] add_retire_purchase ==========") + logging.info("========== [加购 商品] add_retire_purchase ==========") payload = json.dumps({ "addGoods":[{ "inputCode": GoodsInfoData["data"]["inputCode"], @@ -106,134 +106,106 @@ class YMClientApi(object): logging.info(f"-----------接口返回数据:{response.json()}\n\n") return response.json() - def delete_cart_goods(self, GoodsInfoData, LoginData, AddGoodsResponse): - ''' 退购 - - :param GoodsInfoData: + def delete_cart_goods(self, GetGoodsInfoList, LoginData, AddGoodsResp): + ''' 退购 商品 + :param GetGoodsInfoList: + :param LoginData: + :param AddGoodsResp: :return: ''' - logging.info("========== [删除购物车商品] delete_cart_goods ==========") - GoodsInfoData = '' - LoginData = '' - AddGoodsResponse = '' + import random + logging.info("========== [退购 商品] delete_cart_goods ==========") + delGoodsList, existGoodsList = [], [] + for add_goods_info in AddGoodsResp["data"]["orderItemList"]: + exist_goods_dict = {} + exist_goods_dict["inputCode"] = add_goods_info["inputCode"] + exist_goods_dict["isNormalAddPurchase"] = True + exist_goods_dict["qty"] = add_goods_info["qty"] + exist_goods_dict["uuid"] = add_goods_info["uuid"] + if add_goods_info["weight"] > 0: + exist_goods_dict["weight"] = add_goods_info["weight"] + else: + for get_goods_data in GetGoodsInfoList: + if get_goods_data["data"]["inputCode"] == add_goods_info["inputCode"]: + if get_goods_data["data"]["weight"] > 0: + exist_goods_dict["weight"] = get_goods_data["data"]["weight"] + existGoodsList.append(exist_goods_dict) - existGoods = [] - for goodsinfo in AddGoodsResponse["data"]["orderItemList"]: - good_dict = {} - good_dict["inputCode"] = goodsinfo["inputCode"] - good_dict["isNormalAddPurchase"] = True - good_dict["qty"] = goodsinfo["qty"] - good_dict["uuid"] = goodsinfo["uuid"] - # good_dict["weight"] = goodsinfo["weight"] - good_dict["weight"] = GoodsInfoData["data"]["weight"] - existGoods.append(good_dict) + del_goods_dict = {} + delGoodsInfo = random.choice(GetGoodsInfoList) + del_goods_dict["inputCode"] = delGoodsInfo["data"]["inputCode"] + del_goods_dict["isNormalAddPurchase"] = True + del_goods_dict["qty"] = 1 + del_goods_dict["weight"] = 0 + for goodData in delGoodsList: + if goodData["inputCode"] == del_goods_dict["inputCode"]: + del_goods_dict["uuid"] = goodData["uuid"] + delGoodsList.append(del_goods_dict) 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" + "deleteGoods": delGoodsList, + "existGoods": existGoodsList, + "orderNo": LoginData["data"][0]["orderNo"] }) + url = self.Domain + "/v2/shopping/add/retire/purchase" + 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() - 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": None, - "measureProperty": 0, - "shoppingBagFlag": False, - "activityId": None, - "activityDescription": None, - "totalPromotionPrice": 0, - "categoryCode": None, - "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": None, - "measureProperty": 0, - "shoppingBagFlag": False, - "activityId": None, - "activityDescription": None, - "totalPromotionPrice": 0, - "categoryCode": None, - "isOneBarcodeMore": False, - "pkgFlag": False - }], - "bagInfoList": None, - "couponMap": None, - "activityGoodsList": None - } - } + def delete_shopping_bag(self, GetGoodsInfoList, LoginData, AddGoodsResp): + ''' 退购 购物嗲 + :param GetGoodsInfoList: + :param LoginData: + :param AddGoodsResp: + :return: + ''' + import random + logging.info("========== [退购 购物嗲] delete_shopping_bag ==========") - del_201 = { + delGoodsList, existGoodsList = [], [] + for add_goods_info in AddGoodsResp["data"]["bagInfoList"]: + exist_goods_dict = {} + exist_goods_dict["inputCode"] = add_goods_info["inputCode"] + exist_goods_dict["isNormalAddPurchase"] = True + exist_goods_dict["qty"] = add_goods_info["qty"] + exist_goods_dict["uuid"] = add_goods_info["uuid"] + if add_goods_info["weight"] > 0: + exist_goods_dict["weight"] = add_goods_info["weight"] + else: + for get_goods_data in GetGoodsInfoList: + if get_goods_data["data"]["inputCode"] == add_goods_info["inputCode"]: + if get_goods_data["data"]["weight"] > 0: + exist_goods_dict["weight"] = get_goods_data["data"]["weight"] + existGoodsList.append(exist_goods_dict) + + del_goods_dict = {} + delGoodsInfo = random.choice(GetGoodsInfoList) + del_goods_dict["inputCode"] = delGoodsInfo["data"]["inputCode"] + del_goods_dict["isNormalAddPurchase"] = True + del_goods_dict["qty"] = 1 + del_goods_dict["weight"] = 0 + for goodData in delGoodsList: + if goodData["inputCode"] == del_goods_dict["inputCode"]: + del_goods_dict["uuid"] = goodData["uuid"] + delGoodsList.append(del_goods_dict) + + payload = json.dumps({ "addGoods": [], "autoSelectCoupon": True, "coupons": [], - "deleteGoods": [{ - "inputCode": "6924743915848", - "isNormalAddPurchase": True, - "qty": 1, - "uuid": ["F9BBA7C9AF7944FF91C717E3D18BD682"], - "weight": 0 - }], - "existGoods": [{ - "inputCode": "6925303796426", # 取自 add_2_result["data"]["orderItemList"][0]["inputCode"] - "isNormalAddPurchase": True, - "qty": 1, # 取自 add_2_result["data"]["orderItemList"][0]["qty"] - "uuid": ["2BEDF9C6DD954E1FB3DCD9A9F3C57D29"], # 取自 add_2_result["data"]["orderItemList"][1]["uuid"] - "weight": 165 # 取自 GoodsInfoData["data"]["weight"] - }, { - "inputCode": "6924743915848", - "isNormalAddPurchase": True, - "qty": 1, - "uuid": ["F9BBA7C9AF7944FF91C717E3D18BD682"], - "weight": 160 # GoodsInfoData["data"]["weight"] - }], - "orderNo": "1858386778027515904" # 取自 LoginData["data"][0]["orderNo"] - } - + "deleteGoods": delGoodsList, + "existGoods": existGoodsList, + "orderNo": LoginData["data"][0]["orderNo"] + }) + url = self.Domain + "/v2/shopping/add/retire/purchase" + 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 get_coupon_list(self): logging.info("========== [获取优惠券列表] get_coupon_list ==========") @@ -305,14 +277,16 @@ if __name__ == '__main__': ymc.session_start() # step1:session开始 Payload01 = {"action": 0, "isAnon": True} LoginData = ymc.login_app_v2(Payload01) # step2:匿名登录 - ymc.get_login_type() # step3:获取登录方式 - Payload02 = {"action": 1, "code": "18052753212", "isAnon": False} + + Payload02 = {"action": 1, "code": "17786408673", "isAnon": False} ymc.login_app_v2(Payload02) # step4:切换会员登录 + GoodsInfoData = ymc.get_goods_info(InputCode=6924882486100) # step5:获取商品信息 ------ 6924882486100 CouponListData = ymc.get_coupon_list() # step6:获取优惠券列表 ymc.receive_coupon(CouponListData) # step7:领取优惠券 ymc.query_coupon_list_user() # step8:查询用户持有的优惠券列表 + ymc.add_cart_goods(GoodsInfoData, 1, LoginData) # step9:加购商品 ------ 6924882486100 ymc.get_cart_goods_info(GoodsInfoData) # step10:获取购物车商品信息 ymc.request_order_settlement(LoginData) # step11:请求订单结算 diff --git a/YiMao/data/WuShangSceneTestData.py b/YiMao/data/WuShangSceneTestData.py index 7b6d3f2..978c608 100644 --- a/YiMao/data/WuShangSceneTestData.py +++ b/YiMao/data/WuShangSceneTestData.py @@ -13,21 +13,25 @@ adsAreaId-6: 支付后广告 adsAreaId-7: 小票广告 ''' -''' 1-商超、门店信息 ''' +'''1-武商会员账号''' +VIPPhoneNumber = "17786408673" + +''' -商超、门店信息 ''' MarketAndStoreDetails = {"putMarketId": 50, "putStoreId": ["29"]} -''' 2-购物袋 ''' +''' -购物袋 ''' GoodsBagInputcode_mid = '6971648922990' GoodsBagInputcode_max = '6971648922983' -''' 3-普通商品-2件 ''' +''' -普通商品-2件 ''' NormalGoodsInputcode01 = "6924743915848" # 乐事薯片 NormalGoodsInputcode02 = "6925303796426" # 统一番茄牛肉面 -''' 4-会员商品 ''' +''' -会员商品 ''' VipGoodsInputcode = "6925303796426" # 统一番茄牛肉面 -''' 5-折扣商品 ''' +VipGoodsInputcode02 = "6924743915848" # 乐事薯片 +''' -折扣商品 ''' SaleGoodsInputCode = "6924743915848" # 乐事薯片 -''' 6-促销商品白名单 ''' +''' -促销商品白名单 ''' PromotionalWhitelistGoods = {"GoodsInputcode": "6925303796426", "GoodsName": "统一茄皇蕃茄牛肉面"} -''' 7-重量放通白名单 ''' +''' -重量放通白名单 ''' WeightToWhitelistGoods = {"GoodsInputcode": "6924743915848", "GoodsName": "乐事无限翡翠黄瓜味薯片"} diff --git a/YiMao/data/前后端联测业务场景梳理.xlsx b/YiMao/data/前后端联测业务场景梳理.xlsx index bed8cce..4f47f91 100644 Binary files a/YiMao/data/前后端联测业务场景梳理.xlsx and b/YiMao/data/前后端联测业务场景梳理.xlsx differ diff --git a/YiMao/debugLib/demo1024.py b/YiMao/debugLib/demo1024.py deleted file mode 100644 index 3f2ff2d..0000000 --- a/YiMao/debugLib/demo1024.py +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/YiMao/debugLib/test_C009_NonVipReturnShoppingBag.py b/YiMao/debugLib/test_C009_NonVipReturnShoppingBag.py deleted file mode 100644 index 4b646dc..0000000 --- a/YiMao/debugLib/test_C009_NonVipReturnShoppingBag.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个购物袋,退购一个购物袋,并结算 -# @Date:: 2021-05-10 16:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py b/YiMao/debugLib/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py deleted file mode 100644 index b817180..0000000 --- a/YiMao/debugLib/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个普通商品,退购一个,并结算 -# @Date:: 2021-05-10 16:00:00 \ No newline at end of file diff --git a/YiMao/debugLib/test_C011_NonVipReturnOfMemberProducts.py b/YiMao/debugLib/test_C011_NonVipReturnOfMemberProducts.py deleted file mode 100644 index fe2f087..0000000 --- a/YiMao/debugLib/test_C011_NonVipReturnOfMemberProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个会员商品,退购一个,并结算 -# @Date:: 2021-05-10 16:27:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C012_NonVipReturnOneItemFromMultiplePurchases.py b/YiMao/debugLib/test_C012_NonVipReturnOneItemFromMultiplePurchases.py deleted file mode 100644 index ecccd0c..0000000 --- a/YiMao/debugLib/test_C012_NonVipReturnOneItemFromMultiplePurchases.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购多件商品,退购一个商品,并结算 -# @Date:: 2021-05-10 16:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C013_NonVipReturnOfDiscountedProducts.py b/YiMao/debugLib/test_C013_NonVipReturnOfDiscountedProducts.py deleted file mode 100644 index aa8ca93..0000000 --- a/YiMao/debugLib/test_C013_NonVipReturnOfDiscountedProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个打折商品,退购一个,并结算 -# @Date:: 2021-05-10 16:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C014_NonVipReturnPromotionWhitelistProducts.py b/YiMao/debugLib/test_C014_NonVipReturnPromotionWhitelistProducts.py deleted file mode 100644 index a48ea72..0000000 --- a/YiMao/debugLib/test_C014_NonVipReturnPromotionWhitelistProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个促销白名单商品,退购一个,并结算 -# @Date:: 2021-05-10 16:00:00 \ No newline at end of file diff --git a/YiMao/debugLib/test_C015_NonVipReturnWeightOfTheProducte.py b/YiMao/debugLib/test_C015_NonVipReturnWeightOfTheProducte.py deleted file mode 100644 index 2a1ed59..0000000 --- a/YiMao/debugLib/test_C015_NonVipReturnWeightOfTheProducte.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客登录,加购2个重量放通商品,退购一个,并结算 -# @Date:: 2021/04/01 16:00:00 \ No newline at end of file diff --git a/YiMao/debugLib/test_C016_NonToVipAddShoppingBagAndSettlePayment.py b/YiMao/debugLib/test_C016_NonToVipAddShoppingBagAndSettlePayment.py deleted file mode 100644 index a9cbeed..0000000 --- a/YiMao/debugLib/test_C016_NonToVipAddShoppingBagAndSettlePayment.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客转会员登录,加购购物袋,并结算 -# @Date:: 2021-05-10 16:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py b/YiMao/debugLib/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py deleted file mode 100644 index 8fb87f6..0000000 --- a/YiMao/debugLib/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py +++ /dev/null @@ -1,4 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客转会员登录,加购普通商品,并结算 diff --git a/YiMao/debugLib/test_C018_NonToVipAddMemberPproductsForPurchase.py b/YiMao/debugLib/test_C018_NonToVipAddMemberPproductsForPurchase.py deleted file mode 100644 index 03495cd..0000000 --- a/YiMao/debugLib/test_C018_NonToVipAddMemberPproductsForPurchase.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客转会员登录,加购会员商品,并结算 -# @Date:: 2021-05-10 16:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C019_NonToVipAddMultipleItemsForPurchase.py b/YiMao/debugLib/test_C019_NonToVipAddMultipleItemsForPurchase.py deleted file mode 100644 index e3a45b7..0000000 --- a/YiMao/debugLib/test_C019_NonToVipAddMultipleItemsForPurchase.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 游客转会员登录,加购多件商品,并结算 -# @Date:: 2021-05-10 16:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C031_VipAddShoppingBagAndSettlePayment.py b/YiMao/debugLib/test_C031_VipAddShoppingBagAndSettlePayment.py deleted file mode 100644 index fd1baf1..0000000 --- a/YiMao/debugLib/test_C031_VipAddShoppingBagAndSettlePayment.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购购物袋,并结算 -# @Date:: 2021-05-10 16:00:00 \ No newline at end of file diff --git a/YiMao/debugLib/test_C032_VipAddNonDiscountedProductsForPurchase.py b/YiMao/debugLib/test_C032_VipAddNonDiscountedProductsForPurchase.py deleted file mode 100644 index fedd8ed..0000000 --- a/YiMao/debugLib/test_C032_VipAddNonDiscountedProductsForPurchase.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购普通商品,并结算 -# @Date:: 2021-05-10 15:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C033_VipAddMemberPproductsForPurchase.py b/YiMao/debugLib/test_C033_VipAddMemberPproductsForPurchase.py deleted file mode 100644 index 0b43c46..0000000 --- a/YiMao/debugLib/test_C033_VipAddMemberPproductsForPurchase.py +++ /dev/null @@ -1,4 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购会员商品,并结算 diff --git a/YiMao/debugLib/test_C034_VipAddMultipleItemsForPurchase.py b/YiMao/debugLib/test_C034_VipAddMultipleItemsForPurchase.py deleted file mode 100644 index eae4066..0000000 --- a/YiMao/debugLib/test_C034_VipAddMultipleItemsForPurchase.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购多件商品,并结算 -# @Date:: 2021-05-10 15:40:32 \ No newline at end of file diff --git a/YiMao/debugLib/test_C035_VipAddDiscountedProductsForPurchase.py b/YiMao/debugLib/test_C035_VipAddDiscountedProductsForPurchase.py deleted file mode 100644 index 7432edc..0000000 --- a/YiMao/debugLib/test_C035_VipAddDiscountedProductsForPurchase.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购打折商品,并结算 -# @Date:: 2021-05-10 16:00:00 \ No newline at end of file diff --git a/YiMao/debugLib/test_C036_VipAddPromotionalWhitelistProducts.py b/YiMao/debugLib/test_C036_VipAddPromotionalWhitelistProducts.py deleted file mode 100644 index 9fcb271..0000000 --- a/YiMao/debugLib/test_C036_VipAddPromotionalWhitelistProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购促销白名单商品,并结算 -# @Date:: 2021-05-10 16:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C037_VipAddWeightToTheProduct.py b/YiMao/debugLib/test_C037_VipAddWeightToTheProduct.py deleted file mode 100644 index f3167ef..0000000 --- a/YiMao/debugLib/test_C037_VipAddWeightToTheProduct.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购重量放通商品,并结算 -# @Date:: 2021-05-10 15:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C038_VipReturnShoppingBag.py b/YiMao/debugLib/test_C038_VipReturnShoppingBag.py deleted file mode 100644 index 99cba91..0000000 --- a/YiMao/debugLib/test_C038_VipReturnShoppingBag.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个购物袋,退购一个购物袋,并结算 -# @Date:: 2021-05-20 15:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C039_VipReturnPurchaseOfOrdinaryGoods.py b/YiMao/debugLib/test_C039_VipReturnPurchaseOfOrdinaryGoods.py deleted file mode 100644 index ea456e8..0000000 --- a/YiMao/debugLib/test_C039_VipReturnPurchaseOfOrdinaryGoods.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个普通商品,退购一个,并结算 -# @Date:: 2021-05-10 15:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C040_VipReturnOfMemberProducts.py b/YiMao/debugLib/test_C040_VipReturnOfMemberProducts.py deleted file mode 100644 index b3c029d..0000000 --- a/YiMao/debugLib/test_C040_VipReturnOfMemberProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个会员商品,退购一个,并结算 -# @Date:: 2021-05-10 16:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C041_VipReturnOneItemFromMultiplePurchases.py b/YiMao/debugLib/test_C041_VipReturnOneItemFromMultiplePurchases.py deleted file mode 100644 index 794925c..0000000 --- a/YiMao/debugLib/test_C041_VipReturnOneItemFromMultiplePurchases.py +++ /dev/null @@ -1,4 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购多件商品,退购一个商品,并结算 diff --git a/YiMao/debugLib/test_C042_VipReturnOfDiscountedProducts.py b/YiMao/debugLib/test_C042_VipReturnOfDiscountedProducts.py deleted file mode 100644 index 8cef511..0000000 --- a/YiMao/debugLib/test_C042_VipReturnOfDiscountedProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个打折商品,退购一个,并结算 -# @Date:: 2021-05-10 15:30:22 \ No newline at end of file diff --git a/YiMao/debugLib/test_C043_VipReturnPromotionWhitelistProducts.py b/YiMao/debugLib/test_C043_VipReturnPromotionWhitelistProducts.py deleted file mode 100644 index 1904a64..0000000 --- a/YiMao/debugLib/test_C043_VipReturnPromotionWhitelistProducts.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个促销白名单商品,退购一个,并结算 -# @Date:: 2021-05-10 16:30:23 \ No newline at end of file diff --git a/YiMao/debugLib/test_C044_VipReturnWeightOfTheProducte.py b/YiMao/debugLib/test_C044_VipReturnWeightOfTheProducte.py deleted file mode 100644 index bff8733..0000000 --- a/YiMao/debugLib/test_C044_VipReturnWeightOfTheProducte.py +++ /dev/null @@ -1,5 +0,0 @@ -# !/usr/bin/python -# -*- coding: utf-8 -*- -# @Author:: Arthur Wu -# @Description:: 会员登录,加购2个重量放通商品,退购一个,并结算 -# @Date:: 2021-05-10 16:30:22 \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C001_NonLoginCheckADs.py b/YiMao/scripts/BusiScenarios/test_C001_NonLoginCheckADs.py index 74b8cc5..5150fb9 100644 --- a/YiMao/scripts/BusiScenarios/test_C001_NonLoginCheckADs.py +++ b/YiMao/scripts/BusiScenarios/test_C001_NonLoginCheckADs.py @@ -8,19 +8,20 @@ from configs.globalObj import LOGGER from YiMao.businessFunc.ClientApiLib import YMClientApi -class Test_C001_NonLoginCheckADs(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "001-购物车客户端-广告" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C001(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 广告验证 + [购物车客户端] {DescName} ''' def setUp(self) -> None: self.timestamp = int(time.time()) self.ymc = YMClientApi() - @allure.story('[场景测试] 001-购物车客户端-广告验证') def test_C001_NonLoginCheckADs(self): - allure.dynamic.description("描述:购物车客户端-广告验证") + allure.dynamic.description(f"描述:{DescName}") AdListData = self.ymc.get_ads_list() if "error_msg" not in AdListData: adIdList = [] diff --git a/YiMao/scripts/BusiScenarios/test_C002_NonVipAddShoppingBagAndSettlePayment.py b/YiMao/scripts/BusiScenarios/test_C002_NonVipAddShoppingBagAndSettlePayment.py index 38eaa92..bc7f2f9 100644 --- a/YiMao/scripts/BusiScenarios/test_C002_NonVipAddShoppingBagAndSettlePayment.py +++ b/YiMao/scripts/BusiScenarios/test_C002_NonVipAddShoppingBagAndSettlePayment.py @@ -9,30 +9,31 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.data.WuShangSceneTestData import * +DescName = "002-非会员加购购物袋并试算" +@allure.story(f'[场景测试] {DescName}验证') class Test_C002_NonVipAddShoppingBagAndSettlePayment(unittest.TestCase): - '''@Date:: 2024/11/15 + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 加购购物袋并试算验证 + [购物车客户端] {DescName} 1、武商测试环境,购物袋inputcode为: 6971648922990、6971648922983 ''' def setUp(self) -> None: self.timestamp = int(time.time()) self.ymc = YMClientApi() - self.goods_inputcode01 = GoodsBagInputcode_mid - self.goods_inputcode02 = GoodsBagInputcode_max + self.goodsbag_mid = GoodsBagInputcode_mid + self.goodsbag_max = GoodsBagInputcode_max - @allure.story('[场景测试] 00201-非会员加购购物袋并试算验证-01') - def test_C00201_NonVipAddShoppingBagAndSettlePayment(self): - allure.dynamic.description("描述:非会员加购中号购物袋") + def test_C00201_AddMidShoppingbagsForPurchase(self): + allure.dynamic.description(f"描述:加购中号购物袋") 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(self.goods_inputcode01) + GoodsInfoData = self.ymc.get_goods_info(self.goodsbag_mid) if GoodsInfoData['msg'] != '加购商品不存在': allure.step("步骤4:添加购物袋") self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData) @@ -41,18 +42,17 @@ class Test_C002_NonVipAddShoppingBagAndSettlePayment(unittest.TestCase): allure.step("步骤6:请求订单结算") self.ymc.request_order_settlement(LoginData) else: - LOGGER.info(f"---购物袋 {self.goods_inputcode01} 不存在") + LOGGER.info(f"---购物袋 {self.goodsbag_mid} 不存在") - @allure.story('[场景测试] 00202-非会员加购购物袋并试算验证-02') - def test_C00202_AddShoppingBagAndSettlePayment(self): - allure.dynamic.description("描述:非会员加购大号购物袋") + def test_C00202_AddMaxShoppingbagsForPurchase(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(self.goods_inputcode02) + GoodsInfoData = self.ymc.get_goods_info(self.goodsbag_max) if GoodsInfoData['msg'] != '加购商品不存在': allure.step("步骤4:添加购物袋") self.ymc.add_cart_goods(GoodsInfoData, 2, LoginData) @@ -61,7 +61,7 @@ class Test_C002_NonVipAddShoppingBagAndSettlePayment(unittest.TestCase): allure.step("步骤6:请求订单结算") self.ymc.request_order_settlement(LoginData) else: - LOGGER.info(f"---购物袋 {self.goods_inputcode02} 不存在") + LOGGER.info(f"---购物袋 {self.goodsbag_max} 不存在") if __name__ == '__main__': diff --git a/YiMao/scripts/BusiScenarios/test_C003_NonVipAddNonDiscountedProductsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C003_NonVipAddNonDiscountedProductsForPurchase.py index fcc9fa2..4303cfb 100644 --- a/YiMao/scripts/BusiScenarios/test_C003_NonVipAddNonDiscountedProductsForPurchase.py +++ b/YiMao/scripts/BusiScenarios/test_C003_NonVipAddNonDiscountedProductsForPurchase.py @@ -9,11 +9,13 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.data.WuShangSceneTestData import * -class Test_C003_NonVipAddNonDiscountedProductsForPurchaset(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "003-非会员加购无优惠商品并试算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C003(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: test_C003_NonVipAddNonDiscountedProductsForPurchase - [购物车客户端] 加购无优惠商品并试算验证 + [购物车客户端] {DescName} 1、武商测试环境,普通无优惠商品inputcode为: 6924743915848 ''' @@ -22,9 +24,8 @@ class Test_C003_NonVipAddNonDiscountedProductsForPurchaset(unittest.TestCase): self.ymc = YMClientApi() self.NormalGoodsInputcode01 = NormalGoodsInputcode01 # 乐事薯片 - @allure.story('[场景测试] 003-非会员加购无优惠商品并试算验证-01') def test_C003_NonVipAddNonDiscountedProductsForPurchase(self): - allure.dynamic.description("描述:非会员加购无优惠商品") + allure.dynamic.description(f"描述:{DescName}") allure.step("步骤1:session开始") self.ymc.session_start() allure.step("步骤2:匿名登录") diff --git a/YiMao/scripts/BusiScenarios/test_C004_NonVipAddMemberPproductsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C004_NonVipAddMemberPproductsForPurchase.py index b74d2a1..f3aa5a2 100644 --- a/YiMao/scripts/BusiScenarios/test_C004_NonVipAddMemberPproductsForPurchase.py +++ b/YiMao/scripts/BusiScenarios/test_C004_NonVipAddMemberPproductsForPurchase.py @@ -9,11 +9,13 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.data.WuShangSceneTestData import * -class Test_C004_NonVipAddMemberPproductsForPurchase(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "004-非会员加购会员商品并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C004(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 加购会员商品并结算验证 + [购物车客户端] {DescName} 1、武商测试环境,会员有优惠商品inputcode为: !!!!会员有优惠商品暂未提供 ''' @@ -23,16 +25,15 @@ class Test_C004_NonVipAddMemberPproductsForPurchase(unittest.TestCase): # 会员有优惠商品暂未提供 self.vip_goods_inputcode = VipGoodsInputcode # 统一番茄牛肉面 - @allure.story('[场景测试] 004-非会员加购会员商品并结算验证-01') def test_C004_NonVipAddMemberPproductsForPurchase(self): - allure.dynamic.description("描述:非会员加购会员有优惠商品") + allure.dynamic.description(f"描述:{DescName}") 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=self.vip_goods_inputcode) + GoodsInfoData = self.ymc.get_goods_info(self.vip_goods_inputcode) if GoodsInfoData['msg'] != '加购商品不存在': allure.step("步骤4:添加会员有优惠商品") self.ymc.add_cart_goods(GoodsInfoData, 1, LoginData) diff --git a/YiMao/scripts/BusiScenarios/test_C005_NonVipAddMultipleItemsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C005_NonVipAddMultipleItemsForPurchase.py index 3dceb25..5ae9e6e 100644 --- a/YiMao/scripts/BusiScenarios/test_C005_NonVipAddMultipleItemsForPurchase.py +++ b/YiMao/scripts/BusiScenarios/test_C005_NonVipAddMultipleItemsForPurchase.py @@ -9,11 +9,13 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.data.WuShangSceneTestData import * -class Test_C005_NonVipAddMultipleItemsForPurchase(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "005-非会员加购多件商品并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C005(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 加购多件商品并结算 验证 + [购物车客户端] {DescName} 1、武商测试环境,多件商品的 inputcode 分别为: ''' def setUp(self) -> None: @@ -22,9 +24,8 @@ class Test_C005_NonVipAddMultipleItemsForPurchase(unittest.TestCase): self.goods_inputcode1 = NormalGoodsInputcode01 # 乐事薯片 self.goods_inputcode2 = NormalGoodsInputcode02 # 统一番茄牛肉面 - @allure.story('[场景测试] 005-非会员加购会员商品并结算验证') def test_C005_NonVipAddMultipleItemsForPurchase(self): - allure.dynamic.description("描述:非会员加购会员有优惠商品") + allure.dynamic.description(f"描述:{DescName}") allure.step("步骤1:session开始") self.ymc.session_start() allure.step("步骤2:匿名登录") diff --git a/YiMao/scripts/BusiScenarios/test_C006_NonVipAddDiscountedProductsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C006_NonVipAddDiscountedProductsForPurchase.py index e722ded..111271a 100644 --- a/YiMao/scripts/BusiScenarios/test_C006_NonVipAddDiscountedProductsForPurchase.py +++ b/YiMao/scripts/BusiScenarios/test_C006_NonVipAddDiscountedProductsForPurchase.py @@ -9,11 +9,13 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.data.WuShangSceneTestData import * -class Test_C006_NonVipAddDiscountedProductsForPurchaset(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "006-非会员加购打折商品并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C006(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 加购打折商品并结算 验证 + [购物车客户端] {DescName} 1、武商测试环境,会员有优惠商品inputcode为: !!!!折扣商品暂未提供 ''' @@ -23,9 +25,8 @@ class Test_C006_NonVipAddDiscountedProductsForPurchaset(unittest.TestCase): # 折扣商品暂未提供 self.sale_goods_inputCode = SaleGoodsInputCode # 乐事薯片 - @allure.story('[场景测试] 006-非会员加购打折商品并结算-01') def test_C006_NonVipAddDiscountedProductsForPurchase(self): - allure.dynamic.description("描述:非会员加购打折商品并结算") + allure.dynamic.description(f"描述:{DescName}") allure.step("步骤1:session开始") self.ymc.session_start() allure.step("步骤2:匿名登录") diff --git a/YiMao/scripts/BusiScenarios/test_C007_NonVipAddPromotionalWhitelistProducts.py b/YiMao/scripts/BusiScenarios/test_C007_NonVipAddPromotionalWhitelistProducts.py index bfd2ca8..1159774 100644 --- a/YiMao/scripts/BusiScenarios/test_C007_NonVipAddPromotionalWhitelistProducts.py +++ b/YiMao/scripts/BusiScenarios/test_C007_NonVipAddPromotionalWhitelistProducts.py @@ -9,11 +9,14 @@ from YiMao.businessFunc.ClientApiLib import YMClientApi from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.data.WuShangSceneTestData import * -class Test_C007_NonVipAddPromotionalWhitelistProducts(unittest.TestCase): - '''@Date:: 2024/11/15 + +DescName = "007-非会员加购促销白名单商品并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C007(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu - @Desc:: test_C007_NonVipAddPromotionalWhitelistProducts - [购物车客户端] 加购促销白名单商品并结算 验证 + @Desc:: + [购物车客户端] {DescName} 1、武商测试环境,促销白名单商品inputcode为: 6925303796426 ''' @@ -28,9 +31,8 @@ class Test_C007_NonVipAddPromotionalWhitelistProducts(unittest.TestCase): "StoreId": MarketAndStoreDetails["putStoreId"][0] } - @allure.story('[场景测试] 007-非会员加购促销白名单商品并结算') def test_C007_NonVipAddPromotionalWhitelistProducts(self): - allure.dynamic.description("描述:非会员加购促销白名单商品并结算") + allure.dynamic.description(f"描述:{DescName}") allure.step("[前置条件]:先调用管理平台接口,将指定商品添加到促销白名单中") pre_respomse = self.yms.add_promotional_product_whitelist( self.promotional_whitelist_goods, self.market_and_store_info diff --git a/YiMao/scripts/BusiScenarios/test_C008_NonVipAddWeightToTheProduct.py b/YiMao/scripts/BusiScenarios/test_C008_NonVipAddWeightToTheProduct.py index c622f1a..308b268 100644 --- a/YiMao/scripts/BusiScenarios/test_C008_NonVipAddWeightToTheProduct.py +++ b/YiMao/scripts/BusiScenarios/test_C008_NonVipAddWeightToTheProduct.py @@ -10,11 +10,13 @@ from YiMao.businessFunc.ServiceApiLib import YMServiceApi from YiMao.data.WuShangSceneTestData import * -class Test_C008_NonVipAddWeightToTheProduct(unittest.TestCase): - '''@Date:: 2024/11/15 +DescName = "008-非会员加购重量放通商品并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C008(unittest.TestCase): + f'''@Date:: 2024/11/15 @Author:: Arthur Wu @Desc:: - [购物车客户端] 加购重量放通商品并结算 验证 + [购物车客户端] {DescName} 1、武商测试环境,重量放通商品inputcode为: 6924743915848 ''' @@ -29,9 +31,8 @@ class Test_C008_NonVipAddWeightToTheProduct(unittest.TestCase): "StoreId": MarketAndStoreDetails["putStoreId"][0] } - @allure.story('[场景测试] 008-非会员加购重量放通商品并结算') def test_C008_NonVipAddWeightToTheProduct(self): - allure.dynamic.description("描述:非会员加购重量放通商品并结算") + 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 diff --git a/YiMao/scripts/BusiScenarios/test_C009_NonVipReturnShoppingBag.py b/YiMao/scripts/BusiScenarios/test_C009_NonVipReturnShoppingBag.py new file mode 100644 index 0000000..34e750d --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C009_NonVipReturnShoppingBag.py @@ -0,0 +1,61 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个购物袋,退购一个购物袋,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + +DescName = "009-非会员,加购2个购物袋,退购一个购物袋,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C009(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() + self.shoppingbag_mid = GoodsBagInputcode_mid # 乐事薯片 + self.shoppingbag_max = GoodsBagInputcode_max # 统一番茄牛肉面 + + def test_C009_NonVipReturnShoppingBag(self): + allure.dynamic.description(f"描述:{DescName}") + allure.step("步骤1:session开始") + 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.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} 不存在") + else: + LOGGER.info(f"---商品 {self.shoppingbag_mid} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py b/YiMao/scripts/BusiScenarios/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py new file mode 100644 index 0000000..a9c665d --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C010_NonVipReturnPurchaseOfOrdinaryGoods.py @@ -0,0 +1,61 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个普通商品,退购一个,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + +DescName = "010-非会员,加购2个普通商品,退购一个,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C010(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() + self.goods_01 = NormalGoodsInputcode01 # 乐事薯片 + self.goods_02 = NormalGoodsInputcode02 # 统一番茄牛肉面 + + def test_C010_NonVipReturnPurchaseOfOrdinaryGoods(self): + allure.dynamic.description(f"描述:{DescName}") + allure.step("步骤1:session开始") + 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_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} 不存在") + else: + LOGGER.info(f"---商品 {self.goods_01} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C011_NonVipReturnOfMemberProducts.py b/YiMao/scripts/BusiScenarios/test_C011_NonVipReturnOfMemberProducts.py new file mode 100644 index 0000000..4de23f7 --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C011_NonVipReturnOfMemberProducts.py @@ -0,0 +1,61 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个会员商品,退购一个,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + +DescName = "011-非会员,加购2个会员商品,退购一个,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C011(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() + self.vip_goods_01 = VipGoodsInputcode # 乐事薯片 + self.vip_goods_02 = VipGoodsInputcode02 # 统一番茄牛肉面 + + def test_C011_NonVipReturnOfMemberProducts(self): + allure.dynamic.description(f"描述:{DescName}") + allure.step("步骤1:session开始") + 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.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} 不存在") + else: + LOGGER.info(f"---商品 {self.vip_goods_01} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C012_NonVipReturnOneItemFromMultiplePurchases.py b/YiMao/scripts/BusiScenarios/test_C012_NonVipReturnOneItemFromMultiplePurchases.py new file mode 100644 index 0000000..630e08f --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C012_NonVipReturnOneItemFromMultiplePurchases.py @@ -0,0 +1,61 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购多件商品,退购一个商品,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + +DescName = "012-非会员,加购多件商品,退购一个商品,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C012(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() + self.goods_inputcode1 = NormalGoodsInputcode01 # 乐事薯片 + self.goods_inputcode2 = NormalGoodsInputcode02 # 统一番茄牛肉面 + + def test_C012_NonVipReturnOneItemFromMultiplePurchases(self): + allure.dynamic.description(f"描述:{DescName}") + allure.step("步骤1:session开始") + 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} 不存在") + else: + LOGGER.info(f"---商品 {self.goods_inputcode1} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C013_NonVipReturnOfDiscountedProducts.py b/YiMao/scripts/BusiScenarios/test_C013_NonVipReturnOfDiscountedProducts.py new file mode 100644 index 0000000..5db55c3 --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C013_NonVipReturnOfDiscountedProducts.py @@ -0,0 +1,54 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个打折商品,退购一个,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + +DescName = "013-非会员,加购2个打折商品,退购一个,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C013(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() + self.sale_goods_inputCode = SaleGoodsInputCode # 乐事薯片 + + def test_C013_NonVipReturnOfDiscountedProducts(self): + allure.dynamic.description(f"描述:{DescName}") + allure.step("步骤1:session开始") + 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} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) + diff --git a/YiMao/scripts/BusiScenarios/test_C014_NonVipReturnPromotionWhitelistProducts.py b/YiMao/scripts/BusiScenarios/test_C014_NonVipReturnPromotionWhitelistProducts.py new file mode 100644 index 0000000..4d21a9a --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C014_NonVipReturnPromotionWhitelistProducts.py @@ -0,0 +1,76 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个促销白名单商品,退购一个,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.businessFunc.ServiceApiLib import YMServiceApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "014-非会员加购2个促销白名单商品,退购一个" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C014(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() + self.yms = YMServiceApi() + # 促销白名单商品暂未提供 + self.promotional_whitelist_goods = PromotionalWhitelistGoods + self.market_and_store_info = { + "MarketId": MarketAndStoreDetails["putMarketId"], + "StoreId": MarketAndStoreDetails["putStoreId"][0] + } + + def test_C014_NonVipReturnPromotionWhitelistProducts(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("步骤1:session开始") + 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"]) + if GoodsInfoData1['msg'] != '加购商品不存在': + allure.step("步骤4:加购白名单商品") + AddGoodsResp = self.ymc.add_cart_goods(GoodsInfoData1, 2, LoginData) + + ''' 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"]} 不存在") + + allure.step("[后置处理]:删除添加的促销白名单商品") + self.yms.delete_whitelist_goods() + else: + LOGGER.info(f"---添加商品 {self.promotional_whitelist_goods['GoodsInputcode']} " + f"到促销白名单失败") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C015_NonVipReturnWeightOfTheProducte.py b/YiMao/scripts/BusiScenarios/test_C015_NonVipReturnWeightOfTheProducte.py new file mode 100644 index 0000000..1a15252 --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C015_NonVipReturnWeightOfTheProducte.py @@ -0,0 +1,76 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客登录,加购2个重量放通商品,退购一个,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.businessFunc.ServiceApiLib import YMServiceApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "015-非会员加购2个重量放通商品,退购一个" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C015(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() + self.yms = YMServiceApi() + # 重量放通白名单商品暂未提供 + self.weight_to_whitelist_goods = WeightToWhitelistGoods + self.market_and_store_info = { + "MarketId": MarketAndStoreDetails["putMarketId"], + "StoreId": MarketAndStoreDetails["putStoreId"][0] + } + + def test_C015_NonVipReturnWeightOfTheProducte(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("步骤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(self.weight_to_whitelist_goods["GoodsInputcode"]) + if GoodsInfoData1['msg'] != '加购商品不存在': + allure.step("步骤4:加购白名单商品") + AddGoodsResp = self.ymc.add_cart_goods(GoodsInfoData1, 5, LoginData) + + ''' 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"]} 不存在") + + allure.step("[后置处理]:删除添加的重量放通白名单商品") + self.yms.delete_weight_whitelist_goods() + else: + LOGGER.info(f"---添加商品 {self.weight_to_whitelist_goods['GoodsInputcode']} " + f"到重量放通白名单失败") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C016_NonToVipAddShoppingBagAndSettlePayment.py b/YiMao/scripts/BusiScenarios/test_C016_NonToVipAddShoppingBagAndSettlePayment.py new file mode 100644 index 0000000..80481cf --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C016_NonToVipAddShoppingBagAndSettlePayment.py @@ -0,0 +1,81 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客转会员登录,加购购物袋,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "016-游客转会员登录,加购购物袋,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C016_NonToVipAddShoppingBagAndSettlePayment(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() + self.vip_phone_num = VIPPhoneNumber + self.goodsbag_mid = GoodsBagInputcode_mid + self.goodsbag_max = GoodsBagInputcode_max + + def test_C01601_AddMidShoppingbagsForPurchase(self): + allure.dynamic.description(f"描述:加购中号购物袋") + 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:切换会员登录") + 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} 不存在") + + def test_C01602_AddMaxShoppingbagsForPurchase(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:切换会员登录") + 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} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) + + diff --git a/YiMao/scripts/BusiScenarios/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py new file mode 100644 index 0000000..7b6651f --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C017_NonToVipAddNonDiscountedProductsForPurchase.py @@ -0,0 +1,54 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客转会员登录,加购普通商品,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "017-游客转会员登录,加购普通商品,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C017(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() + self.vip_phone_num = VIPPhoneNumber + self.NormalGoodsInputcode01 = NormalGoodsInputcode01 # 乐事薯片 + + def test_C017_NonToVipAddNonDiscountedProductsForPurchase(self): + allure.dynamic.description(f"描述:{DescName}") + 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:切换会员登录") + 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} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C018_NonToVipAddMemberPproductsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C018_NonToVipAddMemberPproductsForPurchase.py new file mode 100644 index 0000000..cbcc01b --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C018_NonToVipAddMemberPproductsForPurchase.py @@ -0,0 +1,55 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客转会员登录,加购会员商品,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "018-游客转会员登录,加购会员商品,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C018(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() + # 会员有优惠商品暂未提供 + self.vip_phone_num = VIPPhoneNumber + self.vip_goods_inputcode = VipGoodsInputcode # 统一番茄牛肉面 + + def test_C018_NonToVipAddMemberPproductsForPurchase(self): + allure.dynamic.description(f"描述:{DescName}") + 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:切换会员登录") + 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} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file diff --git a/YiMao/scripts/BusiScenarios/test_C019_NonToVipAddMultipleItemsForPurchase.py b/YiMao/scripts/BusiScenarios/test_C019_NonToVipAddMultipleItemsForPurchase.py new file mode 100644 index 0000000..ec2ade7 --- /dev/null +++ b/YiMao/scripts/BusiScenarios/test_C019_NonToVipAddMultipleItemsForPurchase.py @@ -0,0 +1,61 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +# @Author:: Arthur Wu +# @Description:: 游客转会员登录,加购多件商品,并结算 +# @Date:: 2024/11/20 +import unittest,allure,time +from configs.globalObj import LOGGER +from YiMao.businessFunc.ClientApiLib import YMClientApi +from YiMao.data.WuShangSceneTestData import * + + +DescName = "019-游客转会员登录,加购多件商品,并结算" +@allure.story(f'[场景测试] {DescName}验证') +class Test_C019(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() + self.vip_phone_num = VIPPhoneNumber + self.goods_inputcode1 = NormalGoodsInputcode01 # 乐事薯片 + self.goods_inputcode2 = NormalGoodsInputcode02 # 统一番茄牛肉面 + + def test_C019_NonToVipAddMultipleItemsForPurchase(self): + allure.dynamic.description(f"描述:{DescName}") + 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:切换会员登录") + 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} 不存在") + else: + LOGGER.info(f"---商品 {self.goods_inputcode1} 不存在") + + +if __name__ == '__main__': + unittest.main(verbosity=2) \ No newline at end of file