class TestDeal(unittest.TestCase): """消费模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #--------------------------------------Deal START---------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Deal.yaml', caseflag='DEAL_CASE1'))) def testDealconsumetoday(self, data): '''交易模块:当日交易计录统计/consume/today''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ConsumeToday'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('shop')) @ddt.data(*(scripts.loadDdtData(filename='Deal.yaml', caseflag='DEAL_CASE2'))) def testDealgetpaytype(self, data): '''交易模块:获取交易/储值支付方式/deal/getpaytype''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealGetPayType'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('1')) @ddt.data(*(scripts.loadDdtData(filename='Deal.yaml', caseflag='DEAL_CASE3'))) def testDealsendnotification(self, data): '''交易模块/deal/sendnotification''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealSendnotification'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']['result'] == 'SUCCESS')
class TestGrade(unittest.TestCase): """等级模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #----------------------------------------Grade START---------------------------------------# #等级接口 @ddt.data(*(scripts.loadDdtData(filename='Grade.yaml', caseflag='GRADE_CASE1'))) def testGraderule(self, data): '''等级接口:查看等级设置/grade/rule''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['GradeRule'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('grades')) @ddt.data(*(scripts.loadDdtData(filename='Grade.yaml', caseflag='GRADE_CASE2'))) def testUsergrade(self, data): '''等级接口:查询会员等级信息/user/grade''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserGrade'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('name'))
class TestTag(unittest.TestCase): """标签模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #-------------------------------------------------Tag START---------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Tags.yaml', caseflag='TAGS_CASE2'))) def testTaglistusertags(self, data): '''用户接口:用户标签列表/tag/listusertags''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['TagListUserTags'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) # self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Tags.yaml', caseflag='TAGS_CASE1'))) def testTagtouser(self, data): '''用户接口:用户增加标签/tag/touser''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['TagToUser'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']['result'] == 'ok')
class TestProduct(unittest.TestCase): """Product模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass @ddt.data(*(scripts.loadDdtData(filename='Product.yaml', caseflag='PRODUCT_CASE1'))) def testProductlist(self, data): '''菜品接口:商家点菜记录列表/product/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ProductList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Product.yaml', caseflag='PRODUCT_CASE2'))) def testProductlistbyuser(self, data): '''菜品接口:查询会员点菜记录/product/listbyuser''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ProductListByUser'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg'])
class TestActivity(unittest.TestCase): """活动模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #---------------------------------------Activity START-------------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Activity.yaml', caseflag='ACTIVITY_CASE1'))) def testActivityGetuserthumbuplog(self, data): '''活动接口:查询用户参与的集赞活动/activity/getuserthumbuplog''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['Getuserthumbuplog'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # me,he = scripts.MultipartPartData( # req=data['Getuserthumbuplog'], # appid = data['Appid'], # v = 2.0, # ts = 1, # sig = 1, # boundary = '----WebKitFormBoundary7MA4YWxkTrZu0gW' # ) # interface = HttpWebRequest() # interface.url = data['Url'] # interface.payload = me # interface.headers = he # res = interface.post #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言 self.assertTrue(res['res'])
class TestUser(unittest.TestCase): """用户模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #-----------------------------------------User START----------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE1'))) def testUseraccount(self, data): '''用户接口:获取用户账户信息/user/account''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserAccount'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE2'))) def testUsergetinfo(self, data): '''用户接口:获取微信用户账户信息/user/getinfo''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserGetinfo'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE3'))) def testUsercheckcard(self, data): '''用户接口:验证实体卡信息/user/checkcard''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserCheckCard'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE4'))) def testUsercardinfo(self, data): '''用户接口:查询电子卡接口/user/cardinfo''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserCardinfo'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE5'))) def testUseredit(self, data): '''用户接口:修改会员信息/user/edit''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserEdit'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE6'))) def testUserugetinfo(self, data): '''用户接口:unionid查询用户/user/ugetinfo''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserUgetinfo'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE7'))) def testUseruopencard(self, data): '''用户接口:unionid开卡/user/uopencard''' #unionid电子卡号 data['UserUopencard']['unionid'] = eval( data['UserUopencard']['unionid']) # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserUopencard'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], data['AssertCode'], res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE8'))) def testUserSendCode(self, data): '''用户接口:给指定用户发送验证码/user/sendcode''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserSendcode'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言 给指定用户发送验证码 self.assertEqual(res['res']['result'], 'SUCCESS', res['res']['result']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE9'))) def testUserCreditListI(self, data): '''用户接口:用户积分记录/user/creditlist''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserCreditList'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言,用户积分记录 self.assertTrue(res['res'], "查询结果为空") #查询res为空 @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE10'))) def testUserDynamic(self, data): '''用户接口:获取用户动态卡号/user/dynamic''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserDynamic'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言获取用户动态卡号接口 self.assertTrue(res['res']['dynamic_uno'], msg='查询卡号为空') @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE11'))) def testUserGetoverdueCoupon(self, data): '''用户接口:获取已使用优惠券/user/getusedcoupons''' # 获取已使用优惠券 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UsedCoupon'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言获取已使用优惠券 #self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE12'))) def testUserGetUseCoupon(self, data): '''用户接口:获取已过期优惠券user/getoverduecoupons''' # 获取已过期优惠券 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['OverDueCoupon'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言获取已过期优惠券 #self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE13'))) def testUserGetc2uInfo(self, data): '''用户接口:根据券获取用户账户信息/user/getc2uinfo''' # 根据券获取用户账户信息 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['Getc2uinfo'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言获取已过期优惠券 #self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE14'))) def testUserMergeActualCard(self, data): '''用户接口:根据券获取用户账户信息/user/mergeActualCard''' # 合并微信和实体卡 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['MergeActualCard'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 22019, res['errmsg']) #断言该实体卡已被其他微信卡绑定 @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE15'))) def testUserCouponlist(self, data): """会员全部券接口/user/couponlist""" res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserCouponList'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE16'))) def testUserPhoneCard(self, data): """手机开卡/user/phonecard""" res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserPhoneCard'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']['result'] == 'SUCCESS') @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE17'))) def testUserGrade(self, data): """查询会员等级信息/user/grade""" res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserGrade'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='User.yaml', caseflag='USER_CASE18'))) def testUserBindPhone(self, data): """绑定/修改手机号/user/bindphone""" res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['BindPhone'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg'])
class TestCharge(unittest.TestCase): """点评微生活-API单接口""" @classmethod def setUpClass(cls): cls.__name__ = '储值模块' @classmethod def tearDownClass(cls): pass # ---------------------------------------charge START------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE1'))) def testChargetoday(self, data): '''储值模块:当日储值统计/charge/today''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeToDay'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('shop_offline')) @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE2'))) def testChargeReceipt(self, data): '''储值模块:储值是否开发票/charge/receipt''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeReceipt'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']['result'] == 'SUCCESS') @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE3'))) def testChargeChange(self, data): '''储值模块:储值调整/charge/change''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeChange'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('deal_id')) @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE4'))) def testChargeRule(self, data): '''储值模块:查看门店储值规则设置/charge/rule''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeRule'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('content')) @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE5'))) def testChargeView(self, data): '''储值模块:储值记录详情/charge/view''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeView'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('status')) @ddt.data(*(scripts.loadDdtData(filename='Charge.yaml', caseflag='CHARGE_CASE6'))) def testPosChargedetail(self, data): '''储值模块/pos/chargedetail''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['PosChargeDetail'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('payStatus'))
class TestSearch(unittest.TestCase): """查询模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #---------------------------------------Search START-------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE1'))) def testConsumeall(self, data): '''查询接口:/consume/all''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ConsumeAll'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE2'))) def testConsumelist(self, data): '''查询接口:消费记录列表/consume/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ConsumeList'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE3'))) def testChargelist(self, data): '''查询接口:储值记录列表/charge/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeList'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE4'))) def testConsumeview(self, data): '''查询接口:消费记录详情/consume/view ''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ConsumeView'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE5'))) def testConsumeuser(self, data): '''查询接口:用户消费记录/consume/user''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ConsumeUser'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE6'))) def testCouponoverdue(self, data): '''查询接口:/coupon/overdue''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponOverdue'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Search.yaml', caseflag='SEARCH_CASE7'))) def testChargeuser(self, data): '''查询接口:指定会员储值记录列表/charge/user''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeUser'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']['data'])
class TestManage(unittest.TestCase): """商户管理模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #------------------------------------------Manage START----------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Manage.yaml',caseflag='MANAGE_CASE1'))) def testCashierlist(self,data): '''商家接口:获取收银员列表/cashier/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['CashierList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'] ) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Manage.yaml',caseflag='MANAGE_CASE2'))) def testShoplist(self,data): '''商家接口:获取门店列表/shop/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['ShopList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'] ) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Manage.yaml',caseflag='MANAGE_CASE3'))) def testEmployee(self,data): '''商家接口:查询员工/employee/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['EmployeeList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'] ) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Manage.yaml',caseflag='MANAGE_CASE4'))) def testPossignin(self,data): '''商家接口:收银员账号登陆签到/pos/signin''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['PosSignin'], appid=data['Appid'], desc=data['Desc'], url=data['Url'] ) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('cashier_id')) @ddt.data(*(scripts.loadDdtData(filename='Manage.yaml',caseflag='MANAGE_CASE5'))) def testPosshopcredit(self,data): '''硬pos获取用户的积分规则/pos/shopcredit''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['PosShopcredit'], appid=data['Appid'], desc=data['Desc'], url=data['Url'] ) #断言 由于线上,硬pos,测试商家无法,使用,因此断言未登录 self.assertEqual(res['errcode'], 10009, res['errmsg'])
class TestActivity(unittest.TestCase): """活动模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #---------------------------------------Activity START-------------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Activity.yaml', caseflag='ACTIVITY_CASE1'))) def testActivityGetuserthumbuplog(self, data): '''活动接口:查询用户参与的集赞活动/activity/getuserthumbuplog''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['Getuserthumbuplog'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 11001, res['errmsg']) #断言 #self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Activity.yaml', caseflag='ACTIVITY_CASE2'))) def testActivitylist(self, data): '''活动接口:获取活动列表/activity/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ActivityList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Activity.yaml', caseflag='ACTIVITY_CASE3'))) def testActivityOtherlist(self, data): '''异业营销:获取异业营销活动列表/activity/otherlist''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ActivityOtherList'], appid=data['Appid'], desc=data['Desc'], url=data['Url'], appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'])
class TestScenario(unittest.TestCase): #点评微生活API接口 '''点评微生活-API接口场景''' #初始化,setUp每个测试方法,执行一次;如果需要只执行一次使用setUpClass(cls) 需要classmethod修饰 def setUp(self): self.configPath = gl.configPath configyaml = os.path.join(self.configPath, 'config.yaml') self.reportPath = gl.reportPath ''' #储值撤销场景:储值预览->储值提交->储值撤销 ''' @unittest.skipIf( scripts.getRunFlag('testChargeAndCancel') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='ChargeAndCancel.yaml', caseflag='ChargeAndCancel')) def testChargeAndCancel(self, data): '''储值撤销场景:储值预览->储值提交->储值撤销''' '''--------------------------交易预览接口----------------------''' biz_id_01 = scripts.rndTimeStr() + '007' data['ChargePreview']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargePreview'], appid=data['Appid'], desc=data['Desc'], url=data['ChargePreviewUrl'], v=data['V']) self.assertEquals(res['errcode'], 0, res['errmsg']) #交易预览断言 '''--------------------------交易提交接口----------------------''' data['ChargeCommit']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 commitResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeCommit'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeCommitUrl'], v=data['V']) self.assertEquals(commitResult['errcode'], 0, commitResult['errmsg']) #交易提交断言 '''--------------------------交易撤销接口----------------------''' data['ChargeCancel']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 cancelResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeCancel'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeCancelUrl'], v=data['V']) self.assertEquals(cancelResult['errcode'], 0, cancelResult['errmsg']) #交易撤销断言 ''' #自定义充值并消费储值业务场景:储值预览->储值提交->交易预览->交易提交->交易撤销 ''' @unittest.skipIf(scripts.getRunFlag('testChargeAndDeal') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='ChargeAndDeal.yaml', caseflag='ChargeAndDeal')) def testChargeAndDeal(self, data): '''自定义充值并消费储值业务场景:储值预览->储值提交->交易预览->交易提交->交易撤销''' biz_id_01 = str(scripts.rndTimeStr()) + '008' data['ChargePreview']['biz_id'] = biz_id_01 '''--------------------------储值预览----------------------''' # 整合数据,调用接口,获取返回结果 previewResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargePreview'], appid=data['Appid'], desc=data['Desc'], url=data['ChargePreviewUrl'], Appkey=data['Appkey']) self.assertEquals(previewResult['errcode'], 0, previewResult['errmsg']) #储值预览 '''--------------------------储值提交----------------------''' data['ChargeCommit']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 commitResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeCommit'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeCommitUrl'], Appkey=data['Appkey']) self.assertEquals(commitResult['errcode'], 0, commitResult['errmsg']) #储值提交 '''--------------------------交易预览----------------------''' biz_id_03 = scripts.rndTimeStr() + '009' data['DealPreview']['biz_id'] = biz_id_03 # 整合数据,调用接口,获取返回结果 dealPreviewResult = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['DealPreview'], appid=data['Appid'], desc=data['Desc'], url=data['DealPreviewUrl'], Appkey=data['Appkey']) self.assertEquals(dealPreviewResult['errcode'], 0, dealPreviewResult['errmsg']) #交易预览 '''--------------------------交易提交---------------------''' data['DealCommit']['biz_id'] = biz_id_03 # 整合数据,调用接口,获取返回结果 dealcommitResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealCommit'], appid=data['Appid'], desc=data['Desc'], url=data['DealCommitUrl'], Appkey=data['Appkey']) self.assertEquals(dealcommitResult['errcode'], 0, dealcommitResult['errmsg']) #交易提交 '''-------------------------交易撤销---------------------''' data['DealCancel']['biz_id'] = biz_id_03 # 整合数据,调用接口,获取返回结果 dealcancelResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealCancel'], appid=data['Appid'], desc=data['Desc'], url=data['DealCancelUrl'], Appkey=data['Appkey']) self.assertEquals(dealcancelResult['errcode'], 0, dealcancelResult['errmsg']) #交易取消 ''' #发券并撤销 ''' @unittest.skipIf( scripts.getRunFlag('testCouponSendAndCancel') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='CouponSendAndCancel.yaml', caseflag='couponSendAndCancel')) def testCouponSendAndCancel(self, data): '''发券并撤销业务场景:发券->撤销''' # 场景顺序执行 biz_id_01 = scripts.rndTimeStr() + '010' # ----修改数据---- data['CouponSend']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 sendResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponSend'], appid=data['Appid'], desc=data['Desc'], url=data['CouponSendUrl']) self.assertEqual(sendResult['errcode'], 0, sendResult['errmsg']) #发券断言 #撤销发券 data['CouponCancel']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 cancelResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponCancel'], appid=data['Appid'], desc=data['Desc'], url=data['CouponCancelUrl']) #断言 self.assertEqual(cancelResult['errcode'], 0, cancelResult['errmsg']) #撤销发券断言 @unittest.skipIf( scripts.getRunFlag('testGradeEditAndDesc') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='GradeEditAndDesc.yaml', caseflag='Grade')) def testGradeEditAndDesc(self, data): '''会员升级降级:储值调整增加200->会员升级->储值调整减少200''' # 整合数据,调用接口,获取返回结果 Result = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeChangeAdd'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeChangeUrl'], Appkey=data['Appkey']) self.assertEqual(Result['errcode'], 0, Result['errmsg']) #储值调整接口断言 #会员升级 # 整合数据,调用接口,获取返回结果 editResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['GradeEdit'], appid=data['Appid'], desc=data['Desc'], url=data['GradeEditUrl'], Appkey=data['Appkey']) self.assertEqual(editResult['errcode'], 0, editResult['errmsg']) #会员升级接口断言 #储值调整 减少200 # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeChange'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeChangeUrl'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #储值调整接口减少200断言 # 整合数据,调用接口,获取返回结果 查看会员等级信息 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserGrade'], appid=data['Appid'], desc=data['Desc'], url=data['UserGradeUrl'], Appkey=data['Appkey']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #查看会员等级信息 self.assertTrue(res['res']['id'] == '3006327') #降级回普通会员 @unittest.skipIf( scripts.getRunFlag('testCouponCmbSendAndCancel') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='CouponCmbSendAndCancel.yaml', caseflag='OtherCoupon')) def testCouponCmbSendAndCancel(self, data): '''异业营销cmb发券并撤销场景: 获取异业营销活动列表->异业营销cmb发券->异业营销券码核销''' # 获取异业营销活动列表 # 整合数据,调用接口,获取返回结果 result = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['OtherList'], appid=data['Appid'], desc=data['Desc'], url=data['OtherListUrl']) self.assertTrue(result['res']) #异业营销活动列表res[]不为空断言 aid = result['res'][0]['id'] # 异业营销CMB发券 biz_id = scripts.rndTimeStr() + '01' # ----------参数给值------------# data['CmbSend']['biz_id'] = biz_id # 唯一值 data['CmbSend']['aid'] = aid # 活动id # -------------------------------# # 整合数据,调用接口,获取返回结果 sendresult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CmbSend'], appid=data['Appid'], desc=data['Desc'], url=data['CmbSendUrl']) self.assertEqual(sendresult['errcode'], 0, sendresult['errmsg']) #异业营销CMB发券接口 coupon_code = sendresult['res']['coupon_codes'][0]['code'] # 异业营销券码核销 data['OtherVerification']['coupon_code'] = str(coupon_code) # 整合数据,调用接口,获取返回结果 cancelResult = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['OtherVerification'], appid=data['Appid2'], desc=data['Desc'], url=data['OtherVerificationUrl'], Appkey=data['Appkey2']) self.assertEqual(cancelResult['errcode'], 0, cancelResult['errmsg']) #异业营销券码核销接口 @unittest.skipIf( scripts.getRunFlag('testCouponOtherSendAndCancel') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='CouponOtherSendAndCancel.yaml', caseflag='OtherCoupon')) def testCouponOtherSendAndCancel(self, data): '''异业营销发券并撤销场景: 获取异业营销活动列表->异业营销发券->异业营销券码核销''' # 获取异业营销活动列表 # 整合数据,调用接口,获取返回结果 result = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['OtherList'], appid=data['Appid'], desc=data['Desc'], url=data['OtherListUrl']) self.assertTrue(result['res']) aid = str(result['res'][0]['id']) # 异业营销发券 biz_id_01 = scripts.rndTimeStr() + '011' #----------参数给值------------# data['OtherSend']['biz_id'] = biz_id_01 #唯一值 data['OtherSend']['aid'] = aid #活动id # 整合数据,调用接口,获取返回结果 sendresult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['OtherSend'], appid=data['Appid'], desc=data['Desc'], url=data['OtherSendUrl']) self.assertEqual(sendresult['errcode'], 0, sendresult['errmsg']) #异业营销发券接口断言 coupon_code = sendresult['res']['coupon_codes'][0]['code'] #异业营销券码核销 data['OtherVerification']['coupon_code'] = coupon_code # 整合数据,调用接口,获取返回结果 cancelresult = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['OtherVerification'], appid=data['Appid2'], desc=data['Desc'], url=data['OtherVerificationUrl'], Appkey=data['Appkey2']) self.assertEqual(cancelresult['errcode'], 0, cancelresult['errmsg']) #断言 @unittest.skipIf( scripts.getRunFlag('testDealAndRollback') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='DealAndRollback.yaml', caseflag='DealAndRollback')) def testDealAndRollback(self, data): '''消费并冲正场景: 交易预览->交易冲正''' #交易预览 biz_id_01 = scripts.rndTimeStr() + '012' data['DealPreview']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 reviewResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealPreview'], appid=data['Appid'], desc=data['Desc'], url=data['DealPreviewUrl']) #断言 self.assertEqual(reviewResult['errcode'], 0, reviewResult['errmsg']) #消费预览断言 #交易冲正 data['DealRollback']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 rollResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealRollback'], appid=data['Appid'], desc=data['Desc'], url=data['DealRollbackUrl']) #断言 self.assertEqual(rollResult['errcode'], 0, rollResult['errmsg']) #交易冲正断言 #交易提交,冲正之后不允许提交3032交易异常 data['DealCommit']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 commitResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['DealCommit'], appid=data['Appid'], desc=data['Desc'], url=data['DealCommitUrl']) #断言 self.assertEqual(commitResult['errcode'], 3032, commitResult['errmsg']) #交易冲正断言 @unittest.skipIf( scripts.getRunFlag('testCouponSendAndAdjust') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='CouponSendAndAdjust.yaml', caseflag='couponSendAndAdjust')) def testCouponSendAndAdjust(self, data): '''发券并手工调账核销券:发券->获取用户账户信息->手工调账核销券''' #发券 biz_id_01 = scripts.rndTimeStr() + '013' # ----修改数据---- data['CouponSend']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 sendResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponSend'], appid=data['Appid'], desc=data['Desc'], url=data['CouponSendUrl']) self.assertEqual(sendResult['errcode'], 0, sendResult['errmsg']) #发送券接口断言 #获取用户账户信息 # 整合数据,调用接口,获取返回结果 accountResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserAccount'], appid=data['Appid'], desc=data['Desc'], url=data['UserAccountUrl']) #接口断言 self.assertEqual(accountResult['errcode'], 0, accountResult['errmsg']) #获取用户账户信息接口断言 self.assertTrue(accountResult['res'], accountResult['errmsg']) coupon_id_02 = accountResult['res'][0]['coupons'][0]['coupon_ids'][ 0] #券id结构取值 #手工调账核销券 data['CouponAdjust']['coupon_ids'].append( coupon_id_02) #将上一步查到的id传给核销接口 # 整合数据,调用接口,获取返回结果 adjustResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponAdjust'], appid=data['Appid'], desc=data['Desc'], url=data['CouponAdjustUrl']) #断言 self.assertEqual(adjustResult['errcode'], 0, adjustResult['errmsg']) #手工调帐核销断言 self.assertEqual(adjustResult['res']['result'], 'SUCCESS', adjustResult['res']['result']) #手工调帐返回结果断言 ''' #储值并开发票场景:储值预览->储值提交->可开发票查询->开发票 ''' @unittest.skipIf( scripts.getRunFlag('testChargeAndReceipt') == 'N', '验证执行配置') @ddt.data(*scripts.loadDdtData(Itype='s', filename='ChargeAndReceipt.yaml', caseflag='ChargeAndReceipt')) def testChargeAndReceipt(self, data): '''储值并开发票场景:储值预览->储值提交->可开发票查询->开发票''' '''step-1--------------------------交易预览接口----------------------''' biz_id_01 = scripts.rndTimeStr() + '007' data['ChargePreview']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargePreview'], appid=data['Appid'], desc=data['Desc'], url=data['ChargePreviewUrl']) self.assertEquals(res['errcode'], data['ChargeAssertCode'], res['errmsg']) #交易预览断言 '''step-2--------------------------交易提交接口----------------------''' data['ChargeCommit']['biz_id'] = biz_id_01 # 整合数据,调用接口,获取返回结果 commitResult = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeCommit'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeCommitUrl']) self.assertEquals(commitResult['errcode'], data['CommitAssertCode'], commitResult['errmsg']) #交易提交断言 '''step-3--------------------------设置是否开发票----------------------''' data['ChargeReceipt']['biz_id'] = str(biz_id_01) # 整合数据,调用接口,获取返回结果 setReceipt = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['ChargeReceipt'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeReceiptUrl']) self.assertEquals(setReceipt['errcode'], data['ReceiptAssertCode'], setReceipt['errmsg']) self.assertTrue(setReceipt['res']['result'] == "SUCCESS") '''step-4--------------------------用户可开发票查询接口----------------------''' # 整合数据,调用接口,获取返回结果 selectResult = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['ChargeReceiptstat'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeReceiptstatUrl']) self.assertEquals(selectResult['errcode'], data['ReceiptstatAssertCode'], selectResult['errmsg']) self.assertTrue(selectResult['res']) '''step-5--------------------------开发票接口----------------------''' data['ChargeReceiptbatch']['biz_id'] = str(biz_id_01) # 整合数据,调用接口,获取返回结果 batchResult = scripts.loadtestInterface( instance=HttpWebRequest(), instance_pro='post', data=data['ChargeReceiptbatch'], appid=data['Appid'], desc=data['Desc'], url=data['ChargeReceiptbatchUrl']) self.assertEquals(batchResult['errcode'], data['batchAssertCode'], batchResult['errmsg'])
class TestCoupon(unittest.TestCase): """券模块""" @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass #----------------------------------------Coupon START---------------------------------------# @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE1'))) def testCouponsend(self, data): '''券接口:发券/coupon/send''' biz_id = scripts.rndTimeStr() + '006' data['CouponSend']['biz_id'] = biz_id # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponSend'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('biz_id')) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE2'))) def testCoupondetail(self, data): '''券接口:券模板详情/coupon/detail''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponDetail'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res'].has_key('give_friend')) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE3'))) def testCouponList(self, data): '''券接口:券列表/coupon/list''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponList'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE4'))) def testUsergetusercoupons(self, data): '''根据卡号查询券列表/user/getusercoupons''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['UserGetusercoupons'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 0, res['errmsg']) self.assertTrue(res['res']) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE5'))) def testCoupongift(self, data): '''券转赠接口/coupon/gift断言30013,该券已转赠过不能重复提交''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponGift'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) # 断言 self.assertEqual(res['errcode'], 30013, res['errmsg']) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE6'))) def testCouponSendSearch(self, data): '''券接口:根据biz_id查询发券详情/coupon/sendsearch''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['SendSearch'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言根据biz_id查询发券详情 self.assertTrue(res['res'].has_key('cno')) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE7'))) def testCouponC2uinfo(self, data): '''券接口:查询用户下一张券的信息/coupon/c2uinfo''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponC2uinfo'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 0, res['errmsg']) #断言查询用户下一张券的信息接口 self.assertTrue(res['res'].has_key('status')) @ddt.data(*(scripts.loadDdtData(filename='Coupon.yaml', caseflag='COUPON_CASE8'))) def testCouponC2uinfo(self, data): '''券接口:手工调整核销券/coupon/adjust''' # 整合数据,调用接口,获取返回结果 res = scripts.loadtestInterface(instance=HttpWebRequest(), instance_pro='post', data=data['CouponAdjust'], appid=data['Appid'], desc=data['Desc'], url=data['Url']) #断言 self.assertEqual(res['errcode'], 3119, res['errmsg']) #断言手工调整核销券/coupon/adjust