class TestCardrule(unittest.TestCase): """升降级规则设置(VIP会员)""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/cardrule/index') @classmethod def tearDownClass(cls): cls.driver.quit() # pass # @unittest.skip('') @ddt.data(*get_data('cardRule', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """升级规则设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.cindex = Cardrule(self.url, self.driver, data['title']) self.cindex.open # 点击修改 self.cindex.click_modify() # 选择升级规则,并输入内容 self.cindex.select_up(data['rule_text'], data['up_index']) sleep(2) # 点击确认 self.cindex.click_up_sure() # 点击保存 self.cindex.click_save() # @unittest.skip('') @ddt.data(*get_data('cardRule', 'CASE2')) @reply_case_fail(num=1) def testcase2(self, data): """降级规则设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.cindex = Cardrule(self.url, self.driver, data['title']) self.cindex.open # 点击修改 self.cindex.click_subdmote() # 选择降级规则,并输入内容(输入的内容与选择的规则要对应) self.cindex.select_down(data['down_index']) # 月累计消费未达到 self.cindex.input_money(data['money']) # 会员当前等级满 self.cindex.input_sizes(data['sizes'], data['unit']) # 会员在当前等级每 self.cindex.input_month_time(data['monthTime'], data['monthMoney'] ) # 会员在当前等级每 self.cindex.input_recharge_time(data['rechargeTime'], data['rechargeMoney'] ) sleep(2) # 点击确认 self.cindex.click_down_sure() # 点击保存 self.cindex.click_save()
def input_text_index(self, desc, text, index, *loc): """ 按索引输入文本 :param desc: 输入框描述 :param text: 输入内容 :param index: 元素索引 :param loc: 定位器 :return: 无 """ print('Input{}:{}'.format(desc, text)) index = int(index) var = get_data(gl.configFile, 'CONFIG') flag_conf = var['Custom_Var'] # 判断是自定义函数%%还是普通文本 if str(text).startswith('%') and str(text).endswith('%'): flag = str(text) # 判断是自定义函数是否带参数 if ('(' in str(text)) and (')' in str(text)): s = str(text).rsplit('(') flag = '{}{}'.format(s[0], '%') param = s[1].rsplit(')')[0] # eval恢复函数原型并调用 eval(str(flag_conf[flag]).format(param)) else: flag = str(text) eval(flag_conf[flag]) else: ele = self.find_elements(*loc)[index] ele.send_keys(text)
class TestBatchcharge(unittest.TestCase, RechargeDetailPage): """会员管理--批量充值""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/member/batchcharge/index') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('batchcharge', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """批量充值""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.batch = BatchchargePage(self.url, self.driver, data['title']) self.batch.open # 上传文件 # self.batch.upload_file(os.path.join(gl.dataPath, # '批量充值模板.csv') # ) self.batch.up(data['url']) # 输入备注 desc = data['desc'] + genrandomstr(5) self.batch.input_rechargedesc(desc) # 点击确认 self.batch.click_submit() # 点击财务报表 self.click_finance() # 点击充值 self.click_recharge() # 检查是否充值成功 self.assertEqual(self.get_noteth(), desc)
class TestRegionIndex(unittest.TestCase): """区域设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/region/index') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('regionIndex', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """区域设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.rIndex = RegionIndex(self.url, self.driver, data['title']) self.rIndex.open # 添加一级 self.rIndex.click_create_area() # 区域名称 self.rIndex.input_area_name(data['areaName'], data['areaIndex']) # 保存 self.rIndex.click_save() # 断言是否保存成功 self.assertEqual(self.rIndex.get_name(), data['areaName']) # 删除 self.rIndex.click_delete() # 确定 self.rIndex.click_sure()
class TestRoleAdd(unittest.TestCase): """积分排行""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/role/add') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('roleAdd', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """角色与权限-创建角色""" print('========★{}★========'.format(data['case_desc'])) #case描述 tc = RoleAdd(self.url, self.driver, data['page_title']) tc.open #角色名称 tc.input_role_name(data['role_name']) #备注 tc.input_remark_text(data['role_remark']) #选择全部模块 tc.click_select_all() #保存 tc.click_save_button() #断言 self.assertTrue(tc.assert_add_success(data['role_add']))
def input_text(self, text, desc, *loc): """ 输入文本操作 :param text: 输入文本内容;如果为%BLANK%,为清除输入框默认值; 输入文本内容;如果为%NONE%,为不做任何操作 :param desc: :param loc: :return: """ print('Input{}:{}'.format(desc, text)) var = get_data(gl.configFile, 'CONFIG') flag_conf = var['Custom_Var'] # 判断是自定义函数%%还是普通文本 if str(text).startswith('%') and str(text).endswith('%'): flag = str(text) # 判断是自定义函数是否带参数 if ('(' in str(text)) and (')' in str(text)): s = str(text).rsplit('(') flag = '{}{}'.format(s[0], '%') param = s[1].rsplit(')')[0] # eval恢复函数原型并调用 eval(str(flag_conf[flag]).format(param)) else: flag = str(text) eval(flag_conf[flag]) else: self.send_keys(text, *loc)
class TestActivityCreate256(unittest.TestCase): """营销-给生日会员赠券""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/256') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate256', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """给生日会员赠券""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.tc = ActivityCreate256( self.url, self.driver, data['page_title'] ) self.tc.open #活动名称 self.tc.input_activity_name(data['activity_name']) #赠券设置-增加券 self.tc.click_add_coupon() #券类型;0代金券;1礼品券 self.tc.click_coupon_type(data['coupon_type']) #使用 self.tc.click_coupon_used(data['coupon_index']) #发券提醒;0不提醒;1短信提醒 self.tc.click_send_remind(data['remind_index']) #券到期提醒;0不提醒;1短信提醒 self.tc.click_expire(data['expire_index']) #保存-确认 self.tc.click_save_button() self.tc.click_sconfirm_btn() #断言 self.assertTrue( self.tc.assert_add_success( data['activity_name'], data['activity_status'] ) ) #终止 self.tc.click_stop_button() #终止确认 self.tc.click_stop_confirm(data['confirm_index']) #断言 self.assertFalse( self.tc.assert_add_success( data['activity_name'], data['activity_status'] ) )
class TestActivityCreate16(unittest.TestCase): """给新会员赠券""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/16') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate16', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """给新会员赠券""" print('========★{}★========'.format(data['case_desc'])) #case描述 #实例化page对象 ts = ActivityCreate16(self.url, self.driver, data['Title']) # 打开给新会员赠券页面 ts.open #活动名称 ts.input_activity_name(data['activiy_name']) #新赠券 ts.click_add_coupon() # 选择券类型;0代金券;1礼品券 ts.click_coupon_type(data['coupon_type']) # 使用券 ts.click_coupon_used(data['used_index']) #发券提醒;0不提醒;1短信提醒 ts.click_send_remind(data['remind_index']) #券到期提醒;0不提醒;1短信提醒 ts.click_expire(data['expire_index']) #发券日期 ts.input_start_date(data['start_date']) #发券时间 ts.input_start_time(data['start_time']) #下一步 ts.click_next_button() #群发活动消息;0不发送;1发送提醒消息 ts.click_activity_msg(data['activity_msg']) #提交 ts.click_submit_button() #提交确认 #确认按钮索引;1为提交确认 ts.click_sconfirm_btn(data['button_index']) #断言 self.assertTrue( ts.assert_add_success(data['activiy_name'], data['activity_status'])) #删除 ts.click_delete_button() ts.wait(3000) #断言删除 self.assertFalse( ts.assert_add_success(data['activiy_name'], data['activity_status']))
class TestChargelicense(unittest.TestCase): """储值授信""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/chargelicense/list') # 储值授信入口 cls.url_ = "" @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('chargelicenseListPage', 'CASE1')) @reply_case_fail(num=1) def testcase1(self, data): """储值授信修改_增加""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.clist = ChargeLicenseList(self.url, self.driver, data['title']) self.clist.open # 获取修改之前额度 old_num = self.clist.get_totalText() # 点击修改按钮 self.clist.click_eidit_btn() # 选择增加 self.clist.select_creditLimit(data['index']) # 输入增加金额 self.clist.input_increase(data['increase']) # 输入减少金额 self.clist.input_decrease(data['decrease']) # 输入预警额度 self.clist.input_warningLimit(data['warningLimit']) # 输入手机号 self.clist.input_phone(data['phone']) # 点击保存按钮 self.clist.click_submit() # 保存成功,点击返回按钮 self.slist = ChargeListSusscess(self.url_, self.driver, '授信规则设置 - 自动化测试专用') self.slist.clickBcakBtn() # 获取修改后的额度 new_num = self.clist.get_totalText() # 判断是否修改成功 if data['index'] == 0: # 判断增加额度是否成功 self.assertTrue(self.clist.assertEditCreditLimitTrue(old_num, data['increase'], new_num)) else: # 判断减少额度是否成功 self.assertTrue(self.clist.assertEditCreditLimitTrue(old_num, data['decrease'], new_num) )
class TestMallactivityAdd(unittest.TestCase): """限时秒杀""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/mallactivity/add') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('mallactivityAdd', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """限时秒杀""" print('========★{}★========'.format(data['case_desc'])) #case描述 tc = MallactivityAdd(self.url, self.driver, data['page_title']) tc.open #活动名称 tc.input_activtity_name(data['activity_name']) #活动开始时间 tc.input_start_date(data['start_date']) #活动结束时间 tc.input_end_date(data['end_date']) #限购设置;0不限购;1限购,并填入数量 tc.click_limit_shop(data['limit_index'], data['limit_num']) #增加商品 tc.click_add_product() #选择商品;0选择第一个商品,依此类推 tc.click_product_checkbox(data['checkbox_index']) #确认 tc.click_confirm_button() #秒杀价格 tc.input_price_text(data['ses_price']) #秒杀数量 tc.input_number_text(data['ses_num']) #保存 tc.click_save_button() #断言 self.assertTrue( tc.assert_add_success(data['activity_name'], data['activity_status'])) #删除 tc.click_del_button() #删除确认 tc.click_confirm_button() tc.wait(3000) #断言 self.assertFalse( tc.assert_add_success(data['activity_name'], data['activity_status']))
class TestActivityCreate1024(unittest.TestCase): """营销-累计消费返券""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/1024') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate1024', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """开卡关怀""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.tc = ActivityCreate1024(self.url, self.driver, data['page_title']) self.tc.open #活动名称 self.tc.input_activity_name(data['activity_name']) #赠券设置;0金额;1次数 self.tc.select_list_index(data['coupon_index']) #输入金额 self.tc.input_amount_rmb(data['amount']) #赠券设置-增加券 self.tc.click_add_coupon() #券类型;0代金券;1礼品券 self.tc.click_coupon_type(data['coupon_type']) #使用 self.tc.click_coupon_used(data['coupon_index']) #发券提醒;0不提醒;1短信提醒 self.tc.click_send_remind(data['remind_index']) #券到期提醒;0不提醒;1短信提醒 self.tc.click_expire(data['expire_index']) #活动开始时间-结束时间 self.tc.input_start_time(data['start_time']) self.tc.input_end_time(data['end_time']) #活动说明 self.tc.input_activity_desc(data['activity_desc']) #保存-确认 self.tc.click_save_button() self.tc.click_sconfirm_btn() #断言 self.tc.assert_add_success(data['activity_name'], data['status']) #删除 self.tc.click_delete_button() self.tc.wait(3000) #删除断言 self.tc.assert_add_success(data['activity_name'], data['status'])
class TestCardCategory(unittest.TestCase): """卡类别管理""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/cardcategory/index') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('cardCategory', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """添加卡类别""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.clist = Cardcategory(self.url, self.driver, data['title']) self.clist.open # 点击添加卡类别按钮 self.clist.click_cardAdd() # 选择卡类别属性 self.clist.select_cardattribute(data['cardindex']) # 输入卡类别名称 self.clist.input_inputName(data['inputname']) # 选择卡面样式 self.clist.select_cardType(data['cardtype'], os.path.join(gl.dataPath, 'back.png') ) # 卡面名称使用 self.clist.select_cardname(data['cardname'], os.path.join(gl.dataPath, 'logo.png')) # 选择储值 self.clist.select_inputStored(data['inputstored']) sleep(2) # 选择积分 self.clist.selcet_pointValue(data['pointvalue']) # 输入会员价 self.clist.input_vipPrice(data['vipprice']) # 积分特权:每消费现金 self.clist.input_creditPrice(data['creditprice']) # 输入积分特权内容 self.clist.input_privilege(data['index'], data['privilege']) # 点击确定按钮 self.clist.click_submit() self.assertEqual(self.clist.get_sussesscard_name(data['nameindex']), data['inputname']) # 点击删除按钮 self.clist.click_remove(data['remove_index']) # 点击确定 self.clist.click_sure()
class TestActivityCreate1028(unittest.TestCase): """升级赠礼""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/1028') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate1028', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """升级赠礼""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.tc = ActivityCreate1028(self.url, self.driver, data['page_title']) self.tc.open #活动名称 self.tc.input_activity_name(data['activity_name']) #赠券设置-增加券 self.tc.click_add_coupon() #券类型;0代金券;1礼品券 self.tc.click_coupon_type(data['coupon_type']) #使用 self.tc.click_coupon_used(data['coupon_index']) #发券提醒;0不提醒;1短信提醒 self.tc.click_send_remind(data['remind_index']) #券到期提醒;0不提醒;1短信提醒 self.tc.click_expire(data['expire_index']) #活动卡类别 self.tc.click_card_type() #赠送积分 self.tc.input_credit(data['credit_num']) #赠送储值 self.tc.input_charge(data['charge_num']) #活动开始时间 self.tc.input_start_time(data['start_time']) #-结束时间 self.tc.input_end_time(data['end_time']) #保存-确认 self.tc.click_save_button() self.tc.click_sconfirm_btn() #断言 self.tc.assert_add_success(data['start_time']) #删除 self.tc.click_delete_button()
class TestActivityCreate64(unittest.TestCase): """营销-填资料赠券""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/128') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate128', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """填资料赠券""" print('========★{}★========'.format(data['case_desc'])) #case描述 po = ActivityCreate128(self.url, self.driver, data['Title']) po.open #打开赠券页面 # 活动名称 po.input_activity_name(data['Name']) #单击增加券 po.click_add_coupon() #选择券;0代金券;1礼品券 po.click_coupon_type(data['coupon_index']) #使用券;0第一张;1第二张,依此类推 po.click_coupon_used(data['used_index']) #发券提醒;0不提醒;1短信提醒 po.click_send_remind(data['remind_index']) #券到期提醒 po.click_expire(data['exremind_index']) #活动说明 po.input_activity_desc(data['desc']) #保存 po.click_save_button() #保存确认 po.click_sconfirm_btn() #断言 self.assertTrue(po.assert_success(data['Name'], data['add_status'])) #终止 po.click_stop_button() #终止确认 po.click_cstop_button(data['button_index']) #单击终止确认弹框要等几秒才会消失 po.wait(3000) #终止断言 self.assertTrue(po.assert_success(data['Name'], data['stop_status']))
class TestValuecardList(unittest.TestCase): """储值卡--创建""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/valuecard/list') # 储值卡入口 cls.url_s = "" @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('valuecardListPage', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """创建储值卡--永久有效""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.vlist = ValueCardList(self.url, self.driver, data['title']) # 打开储值卡页面 self.vlist.open # 点击开启按钮 self.vlist.select_control(data['on-off']) # sleep(2) # 点击创建储值卡按钮,进入创建、编辑页面 self.vlist.click_cardCreateBtn() # 输入储值名称 card_name = data['name'] + genrandomstr(6) self.vlist.input_name(card_name) # 输入面额 self.vlist.input_denomination(data['denomination']) # 输入售价 self.vlist.input_price(data['price']) # 输入总量 self.vlist.input_total(data['total']) # 选择有效期 0:永久有效;1:多少天后有效 self.vlist.select_prepaid_term(data['index']) # 当选择有效期为1,输入天数 self.vlist.input_prepaidTermCount(data['prepaidTermCount']) # 点击保存按钮 self.vlist.clickSaveBtn() # 保存成,点击返回按钮 self.slist = ChargeListSusscess(self.url_s, self.driver, data['title']) self.slist.clickBcakBtn() # 断言是否成功创建储值卡 sleep(2) self.assertEqual(self.vlist.get_successNameText(), card_name)
class TestQueueList(unittest.TestCase): """等位设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/queue/list') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*(get_data('queueList', 'CASE1'))) @reply_case_fail(num=3) def testcase1(self, data): """等位设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.qlist = queueListPage(self.url, self.driver, data['title']) self.qlist.open # 开启 sleep(2) self.qlist.select_state(data['state']) # 创建等位队列 self.qlist.click_create() # 输入列队名称 self.qlist.input_queue_name(data['queueName']) # 输入人数范围 self.qlist.input_min_range(data['minRange']) self.qlist.input_max_range(data['maxRange']) # 选择叫号前缀 self.qlist.select_prefix(data['prefixNum']) # 输入起始号码 self.qlist.input_start_num(data['startNum']) # 选择号码格式 self.qlist.select_format(data['format']) # 选择到号提醒方式,并输入提前多少桌提醒 self.qlist.select_warn(data['warn'], data['warnNum']) # 保存 self.qlist.click_save() # 判断是否保存成功 self.assertEqual(self.qlist.get_name(), data['queueName']) # 删除 self.qlist.click_remove() self.qlist.click_sure()
class TestListCompanies(unittest.TestCase): """集团消费""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/group/listCompanies') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('listCompanies', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """添加集团消费""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.list = ListCompaniesPage(self.url, self.driver, data['title'] ) self.list.open # 添加集团 self.list.click_groupcreate() # 集团名称 merbername = data['merbername'] + genrandomstr(6) self.list.input_merber_name(merbername) # 挂帐额度 self.list.input_overdraft(data['overdraft']) # 联系人姓名 self.list.input_contacts(data['contacts']) # 手机号 phone = createphone() self.list.input_phone(phone) # 备注 self.list.input_desc(data['desc']) # 保存 self.list.click_save() # 首页集团名称 self.list.input_groupper_name(merbername) # 查询 self.list.click_search() # 断言是否添加成功 self.assertEqual(self.list.get_group_name(), merbername)
class TestpPrivilegeList(unittest.TestCase): """特权管理""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('privilege/list') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('privilegeList', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """特权管理""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.plist = PrivilegeList(self.url, self.driver, data['title']) self.plist.open # 新增特权 self.plist.click_addprivilegebox() # 特权名称 self.plist.input_privilege_name(data['privilegeName']) # 选择图标 self.plist.select_privilege_icon(data['privilegeIcon']) # 选择图片 self.plist.select_opt_icon_img(data['imgIndex']) # 点击确定 self.plist.click_ok() # 选择是否展示特权 self.plist.click_show(data['showIndex']) # 选择是否享受特权 self.plist.click_enjoy(data['enjoyIndex']) # 输入特权说明内容 self.plist.input_textarea(data['textarea'], data['areaIndex']) # 点击保存 self.plist.click_save() # 断言是否保存成功 self.assertEqual(self.plist.get_name(), data['privilegeName']) # 删除特权 self.plist.click_delete() # 确定删除 self.plist.click_sure()
class TestManagerList(unittest.TestCase): """账号设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/manager/list') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*(get_data('managerList', 'CASE1'))) @reply_case_fail(num=3) def testcase1(self, data): """账号设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.mlist = ManagerListPage(self.url, self.driver, data['title']) self.mlist.open old_num = self.mlist.get_name() # 创建帐号 self.mlist.click_add() # 选择角色 self.mlist.select_role(data['role']) # 输入姓名 self.mlist.input_name(data['inputName']) # 输入手机号码 phone = data['inputPhone'] + str(int(time.time())) self.mlist.input_phone(phone) # 选择门店 self.mlist.select_shopselector_and_shopname() self.mlist.click_sure() # 选择管理权限 self.mlist.select_userright(data['userRight']) # 点击保存 self.mlist.click_save() new_num = self.mlist.get_name() self.assertTrue(self.mlist.assertTrue(old_num, new_num)) # 禁用 self.mlist.click_remove() # 确定 self.mlist.click_ok()
class TestQuestionnaireList(unittest.TestCase): """问卷设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/questionnaire/list') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('questionnaireList', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """问卷设置""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.qlist = QuestionnaireList(self.url, self.driver, data['title']) self.qlist.open # 点击创建问卷 self.qlist.click_create() # 选择问卷版本 self.qlist.select_edition(data['editon']) # 输入主题 self.qlist.input_subject(data['subject']) # 输入问题题目 self.qlist.input_problem_title(data['problimTitle'], data['titleIdex']) # 输入选项内容 self.qlist.input_option(data['option_1'], data['optionIndex_1']) self.qlist.input_option(data['option_2'], data['optionIndex_2']) # 保存 self.qlist.click_save() # 确认 self.qlist.click_sure() # 断言是否保存成功 self.assertEqual(self.qlist.get_name(), data['subject']) # 删除问卷 self.qlist.click_remove(data['removeIndex']) # 删除确认 self.qlist.click_remove_sure()
class TestActivityCreate1030(unittest.TestCase): """积分排行""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/1030') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate1030', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """积分排行""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.tc = ActiviteCreate1030(self.url, self.driver, data['page_title']) self.tc.open #活动名称 self.tc.input_activity_name(data['activity_name']) #活动描述 self.tc.input_activity_desc(data['activity_desc']) #活动开始时间 self.tc.input_start_time(data['start_time']) #-结束时间 self.tc.input_end_time(data['end_time']) #活动说明 self.tc.input_activity_summary(data['activity_desc']) #保存-确认 self.tc.click_save_button() self.tc.click_sconfirm_btn() #断言 self.assertTrue( self.tc.assert_add_success(data['activity_name'], data['activity_status'])) #删除 self.tc.click_delete_button() self.assertFalse( self.tc.assert_add_success(data['activity_name'], data['activity_status']))
class TestActivityCreate2057(unittest.TestCase): """定向调研""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/1030') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('activityCreate2057', 'CASE1')) @reply_case_fail(num=1) def testCase1(self, data): """积分排行""" print('========★{}★========'.format(data['case_desc'])) #case描述 tc = ActivityCreate2057(self.url, self.driver, data['page_title']) tc.open #活动名称 tc.input_activity_name(data['activity_name'])
class TestActualCardOpen(unittest.TestCase): """实体卡开卡""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/actualcard/opencard') cls.toexcel = Excel(os.path.join(gl.dataPath, 'actualopencard.xls')) @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('actualcardopencard', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """实体卡开卡""" print('========★{}★========'.format(data['case_desc'])) # case描述 actual = ActualCardOpen(self.url, self.driver, data['title']) actual.open #获取实体卡号 card_no = self.toexcel.getCardNo(cell_col=1) print(card_no) #实全卡号 actual.input_card_no(card_no) #手机号 actual.input_mobile_text('1371865{}'.format(rndint(min=1000, max=9999))) #姓名 actual.input_name_text(data['name']) #性别;0男;1女 actual.click_sex_button(data['sex_index']) #生日;0公历;1农历 actual.click_birth_button(data['birth_index']) #生日-格式2018-09-08 actual.input_birth_text(data['birth_date']) #确认开卡 actual.click_confirm_open() #断言 self.assertTrue(actual.assert_success(data['card_assert']))
class TestMemberList(unittest.TestCase): """修改会员卡资料""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/member/list') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*(get_data('memberlist', 'CASE1'))) @reply_case_fail(num=3) def testcase1(self, data): """修改会员卡资料""" print('========★{}★========'.format(data['case_desc'])) # case描述 mlist = MemberList(self.url, self.driver, data['Title']) mlist.open #输入会员卡号 mlist.input_card_no(data['cardNo']) #点击查询 mlist.click_serarch_button() #点击修改资料 mlist.click_change_button() #输入卡名称 mlist.input_card_name(data['cardName']) #性别 mlist.click_sex_button(data['sex_index']) #会员等级 mlist.select_member_level(data['member_level']) #公历 mlist.click_date_type(data['date_type']) #生日 mlist.input_birthday_text(data['birthday']) #确认 mlist.click_confirm_button() #断言 self.assertTrue(mlist.assert_success_text(data['date_type']))
class TestChargeListShopPage(unittest.TestCase): """储值规则设置--门店规则""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/charge/edit?type=shop') # 门店规则入口 cls.url_s = '' # 保存成功页面url,默认为空 cls.url_m = '' # 保存储值规则修改页面url,默认为空 @classmethod def tearDownClass(cls): cls.driver.quit() # pass # @unittest.skip('调试') @ddt.data(*get_data('chargeListShopPage', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """"创建储值规则-固定金额""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.clist = ChargeList(self.url, self.driver, data['title']) # 打开创建储值规则页面 self.clist.open # 输入规则名称 self.clist.inputRuleNameValue(data['name']) # 输入充值金额 self.clist.inputPrepaidValue(data['charge']) # 选择充值送的类型;0:固定金额,1:固定积分,2:代金券/礼品券 self.clist.selectStoreRule(data['storeRule']) # 选择固定金额 self.clist.selectInputAccount(data['account']) # 选择固定金额(元)/实收金额的送(%) self.clist.inputPresentValue(data['presentValue']) # 点击保存 self.clist.clictSubmitBtn() # 断言是否保存成功 self.sclist = ChargeListSusscess(self.url_s, self.driver, '储值规则设置 - 自动化测试专用') self.assertEqual(self.sclist.getScuessText(), data['successText'], data['msg']) # 点击返回 self.sclist.clickBcakBtn() # 点击删除 self.mclist = ChargeListModify(self.url_m, self.driver, '储值规则设置 - 自动化测试专用') self.mclist.clickDelBtn() # 点击确定 self.mclist.clickOkBtn() # 验证删除成功 self.assertEqual(self.mclist.getDelInfo(), data['delInfo'], '删除门店储值规则成功') # @unittest.skip('调试') @ddt.data(*get_data('chargeListShopPage', 'CASE2')) @reply_case_fail(num=3) def testcase2(self, data): """"创建储值规则-固定积分""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.clist = ChargeList(self.url, self.driver, data['title']) # 打开创建储值规则页面 self.clist.open # 输入规则名称 self.clist.inputRuleNameValue(data['name']) # 输入充值金额 self.clist.inputPrepaidValue(data['charge']) # 选择充值送的类型;0:固定金额,1:固定积分,2:代金券/礼品券 self.clist.selectStoreRule(data['storeRule']) # 选择固定积分 self.clist.selectInputIntegral(data['integra']) # 选择固定金额(元)/实收金额的送(%) self.clist.inputIntegralValue(data['integralValue']) # 点击保存 self.clist.clictSubmitBtn() # 断言是否保存成功 self.sclist = ChargeListSusscess(self.url_s, self.driver, '储值规则设置 - 自动化测试专用') self.assertEqual(self.sclist.getScuessText(), data['successText'], data['msg']) # 点击返回 self.sclist.clickBcakBtn() # 点击删除 self.mclist = ChargeListModify(self.url_m, self.driver, '储值规则设置 - 自动化测试专用') self.mclist.clickDelBtn() # 点击确定 self.mclist.clickOkBtn() # 验证删除成功 self.assertEqual(self.mclist.getDelInfo(), data['delInfo'], '删除门店储值规则成功') # @unittest.skip('ok') @ddt.data(*get_data('chargeListShopPage', 'CASE3')) @reply_case_fail(num=3) def testcase3(self, data): """"创建储值规则-代金券/礼品券""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.clist = ChargeList(self.url, self.driver, data['title']) # 打开创建储值规则页面 self.clist.open # 输入规则名称 self.clist.inputRuleNameValue(data['name']) # 输入充值金额 self.clist.inputPrepaidValue(data['charge']) # 选择充值送的类型;0:固定金额,1:固定积分,2:代金券/礼品券 self.clist.selectStoreRule(data['storeRule']) # 选择代金券/礼品券,0:代金券,1:礼品券 self.clist.selectGift(data['couponIndex']) # 点击使用代金券,0:默认使用当前第一个券 self.clist.selectCoupon(data['couponValue']) # 点击保存 self.clist.clictSubmitBtn() # 断言是否保存成功 # 断言是否保存成功 self.sclist = ChargeListSusscess(self.url_s, self.driver, '储值规则设置 - 自动化测试专用') self.assertEqual(self.sclist.getScuessText(), data['successText'], data['msg']) # 点击返回 self.sclist.clickBcakBtn() # 点击删除 self.mclist = ChargeListModify(self.url_m, self.driver, '储值规则设置 - 自动化测试专用') self.mclist.clickDelBtn() # 点击确定 self.mclist.clickOkBtn() # 验证删除成功 self.assertEqual(self.mclist.getDelInfo(), data['delInfo'], '删除门店储值规则成功')
class TestMonitorSet(unittest.TestCase): """异常交易监控-设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/monitor/index?type=set') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('MonitorSet', 'CASE1')) @reply_case_fail(num=1) def testCase1(self, data): """异常交易监控-设置""" print('========★{}★========'.format(data['case_desc'])) #case描述 tc = MonitorSet(self.url, self.driver, data['page_title']) tc.open #单卡单笔消费金额超过 tc.select_consume_single(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡日累计消费金额超过 tc.select_consume_total(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) # 单卡日累计消费金额超过 tc.select_consume_week(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡日累计消费次数超过 tc.select_consume_num(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡周累计消费次数超过 tc.select_consume_weeknum(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡单笔充值金额超过 tc.select_charge_amount(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡日累计充值金额超过 tc.select_charge_total(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡周累计充值金额超过 tc.select_charge_weektotal(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡日累计充值次数超过 tc.select_charge_count(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #单卡周累计充值次数超过 tc.select_charge_weekcount(data['single_amount'], select_index=data['select_index'], bool=data['lock_bool']) #保存 tc.click_save_button() self.assertTrue(tc.assert_success_bool())
class TestActualcard(unittest.TestCase): """申请创建实体卡""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/actualcard/list') cls.url_s = '' header = ['手机号', '姓名', '性别'] data = [{ '手机号': createphone(), '姓名': '六小灵童', '性别': '男' }, { '手机号': createphone(), '姓名': '刘诗诗', '性别': '女' }] write_csvfile(os.path.join(gl.dataPath, '随机卡号+手机号模版.csv'), header, data) @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('actualcardListPage', 'CASE1')) @reply_case_fail(num=3) def testcase1(self, data): """ 创建卡""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.alist = ActualcardList(self.url, self.driver, data['title_first']) self.alist.open # 选择绑定实体卡需验证用户手机号,实体卡开卡需验证用户手机号 self.alist.select_verify_checkbox(data['index']) # 申请实体卡 self.alist.click_addcard_btn() # 输入批次名称 name = data['name'] + genrandomstr(4) self.alist.input_batchName(name) # 卡类别属性 self.alist.select_cardType(data['cardtype']) # 所属卡类别 self.alist.select_cardCategory(data['cardcategory']) # 卡号生成规则 self.alist.select_cardRule(data['cardrule']) # 开卡方式 self.alist.select_cardWay(data['cardway']) # 是否上传手机号 self.alist.select_uploadPhone(data['uploadphone']) # 上传文件 sleep(2) if data['uploadphone'] != '%NONE%': self.alist.upload_csv_file( os.path.join(gl.dataPath, '随机卡号+手机号模版.csv')) # 申请张数 self.alist.input_cardNumber(data['cardnumber']) # 开卡售价 self.alist.input_cardPrice(data['cardprice']) # 保存 self.alist.click_submitBtn() # 返回 self.alist.clickBcakBtn() # 断言 self.assertEqual(self.alist.get_successNameText(), name)
class TestMallProductList(unittest.TestCase): """商城设置""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/mall/productList') @classmethod def tearDownClass(cls): # cls.driver.quit() pass @unittest.skip('调试') @ddt.data(*get_data('mallProductList', 'CASE1')) @reply_case_fail(num=1) def testcase1(self, data): """商城设置-添加商品-电子优惠券""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.mlist = mallProductList(self.url, self.driver, data['title']) self.mlist.open # 功能状态 self.mlist.selcet_mall_list_state(data['liststate']) # 添加商品 self.mlist.click_addGoods() # 选择商品类型 self.mlist.select_goods_type(data['goodsType']) # 商品名称 self.mlist.input_product_name(data['productName']) # 简介 self.mlist.input_product_desc(data['productDesc']) # 添加券 self.mlist.click_weCoupon_btn(data['couponType']) # 使用券 self.mlist.selectCoupon(data['couponIndex']) # 售卖方式 self.mlist.select_sale_state(data['saleState']) # 标准价格 self.mlist.input_price(data['price']) # 积分 self.mlist.inpiut_integral(data['integral']) # 等级折扣 self.mlist.select_gradePrice(data['gradePrice'], data['gradeindex'], data['singleGradePrice'] ) # 库存数量 self.mlist.input_product_onhand(data['product_onhand']) # 限购设置、限购数量 self.mlist.select_limit_buy(data['limitbuy'], data['limitbuycount'] ) # 商品类别 self.mlist.click_good_way() # 下一步 self.mlist.click_next() # 保存 self.mlist.click_submit() # 断言是否保存成功 self.assertEqual(self.mlist.get_name(), data['productName']) # 删除 self.mlist.click_remove() # 确定 self.mlist.click_sure() @unittest.skip('调试') @ddt.data(*get_data('mallProductList', 'CASE2')) @reply_case_fail(num=3) def testcase2(self, data): """商城设置-实物商品""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.mlist = mallProductList(self.url, self.driver, data['title']) self.mlist.open # 功能状态 self.mlist.selcet_mall_list_state(data['liststate']) # 添加商品 self.mlist.click_addGoods() # 选择商品类型 self.mlist.select_goods_type(data['goodsType']) # 商品名称 self.mlist.input_product_name(data['productName']) # 简介 self.mlist.input_product_desc(data['productDesc']) # 介绍 self.mlist.input_product_intro(data['productintro']) sleep(2) # 上传 self.mlist.up_load(os.path.join(gl.dataPath, 'back.png')) # 售卖方式 self.mlist.select_sale_state(data['saleState']) # 库存\规格 self.mlist.select_spec_state(data['specstate']) # 单规格标准价格 self.mlist.input_single_price(data['singleprice']) # 单规格库存数量 self.mlist.input_single_onhand(data['singleonhand']) # 单规格积分 self.mlist.input_single_integral(data['singleintegral']) # 规格名称 self.mlist.input_spec_name(data['specname']) # 多规格标准价格 self.mlist.input_spec_price(data['specprice']) # 多规格库存数量 self.mlist.input_spec_onhand(data['speconhand']) # 多规格积分 self.mlist.input_spec_integral(data['specintegral']) # 等级折扣 self.mlist.select_gradePrice(data['gradePrice'], data['gradeindex'], data['singleGradePrice'] ) # 限购设置、限购数量 self.mlist.select_limit_buy(data['limitbuy'], data['limitbuycount'] ) # 商品类别 self.mlist.click_good_way() # 下一步 self.mlist.click_next() # 保存 self.mlist.click_submit() # 断言是否保存成功 self.assertEqual(self.mlist.get_name(), data['productName']) # 删除 self.mlist.click_remove() # 确定 self.mlist.click_sure() @ddt.data(*get_data('mallProductList', 'CASE3')) @reply_case_fail(num=1) def testcase3(self, data): """商城设置-添加商品-会员等级""" print('========★{}★========'.format(data['case_desc'])) # case描述 self.mlist = mallProductList(self.url, self.driver, data['title']) self.mlist.open # 功能状态 self.mlist.selcet_mall_list_state(data['liststate']) # 添加商品 self.mlist.click_addGoods() # 选择商品类型 self.mlist.select_goods_type(data['goodsType']) # 商品名称 self.mlist.input_product_name(data['productName']) # 简介 self.mlist.input_product_desc(data['productDesc']) # 选择会员等级 self.mlist.select_grade_cardid(data['gradeCardId']) sleep(2) # 上传 self.mlist.up_load(os.path.join(gl.dataPath, 'back.png')) # 售卖方式 self.mlist.select_sale_state(data['saleState']) # 标准价格 self.mlist.input_price(data['price']) # 积分 self.mlist.inpiut_integral(data['integral']) # 等级折扣 self.mlist.select_gradePrice(data['gradePrice'], data['gradeindex'], data['singleGradePrice'] ) # 库存数量 self.mlist.input_product_onhand(data['product_onhand']) # 商品类别 self.mlist.click_good_way() # 下一步 self.mlist.click_next() # 保存 self.mlist.click_submit() # 断言是否保存成功 self.assertEqual(self.mlist.get_name(), data['productName']) # 删除 self.mlist.click_remove() # 确定 self.mlist.click_sure()
class TestActivityCreate63(unittest.TestCase): """膨胀红包""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/create/63') @classmethod def tearDownClass(cls): cls.driver.quit() # pass def prize_set(self, **data): """奖品设置共三个""" #>>>>>>>>>>>>>>>>>>>>>>奖品一<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< #添加优惠券;0奖品一添加;1奖品二添加;2奖品三添加; self.ac.click_add_coupon(data['acindex']) #选择券索引;0奖品一;1奖品二;2奖品三 #类型;0代金券;1礼品券 self.ac.click_coupon_type(data['prize_index'], data['coupon_type']) #使用 #使用券0为第一张券;以此类推 self.ac.click_used(data['used_index']) #奖品名称 #奖品名称元素索引;0为奖品一;1为奖品二;2为奖品三 self.ac.input_prize_name(data['prize_name'], data['pname_index']) self.ac.input_prize_value(data['prize_value'], data['pvalue_index']) self.ac.click_ac_upload(data['upload'], os.path.join(gl.dataPath, 'upload.png')) self.ac.click_ac_upload(data['upload1'], os.path.join(gl.dataPath, 'upload.png')) @ddt.data(*get_data('activityCreate63', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """新建膨胀红包活动""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.ac = ActivityCreate63(self.url, self.driver, data['title']) # 打开创建营销活动页面 self.ac.open #活动名称 self.ac.input_activity_name(data['activity_name']) #活动开始时间 self.ac.input_activity_stime(data['activity_stime']) #活动结束时间 self.ac.input_activity_etime(data['activity_etime']) #活动说明 self.ac.input_activity_desc(data['activity_desc']) #上传商家logo # 0上传logo; # 1奖品一奖品展示图;2奖品一奖品缩略图 # 3奖品二奖品展示图;4奖品二奖品缩略图 # 5奖品三奖品展示图;6奖品三奖品缩略图 # 6顶部宣传纸 self.ac.click_ac_upload(data['upload'], os.path.join(gl.dataPath, 'upload.png')) #奖品一数据 self.prize_set( acindex=data['acindex'], ##0奖品一;1奖品二;2奖品三 增加券 prize_index=data['prize_index'], #选择券索引;0 coupon_type=data['coupon_type'], #类型;0代金券;1礼品券 used_index=data['used_index'], #使用券0为第一张券;以此类推 prize_name=data['prize_name'], #奖品名称 pname_index=data['pname_index'], #奖品名称元素索引;0为奖品一;1为奖品二;2为奖品三 prize_value=data['prize_value'], #兑换所需人数 pvalue_index=data['pvalue_index'], #兑换所需人数元素索引;0为奖品二;1为奖品3 upload=data['upload1'], #上传1,奖品一 upload1=data['upload1_1'] #上传2,奖品一 ) #奖品二 self.prize_set( acindex=data['acindex2'], ##0奖品一;1奖品二;2奖品三 增加券 prize_index=data['prize_index2'], #选择券索引;0 coupon_type=data['coupon_type2'], #类型;0代金券;1礼品券 used_index=data['used_index2'], #使用券0为第一张券;以此类推 prize_name=data['prize_name2'], #奖品名称 pname_index=data['pname_index2'], #奖品名称元素索引;0为奖品一;1为奖品二;2为奖品三 prize_value=data['prize_value2'], #兑换所需人数 pvalue_index=data['pvalue_index2'], #兑换所需人数元素索引;0为奖品二;1为奖品3 upload=data['upload2'], #上传1,奖品一 upload1=data['upload2_2'] #上传2,奖品一 ) #奖品三 self.prize_set( acindex=data['acindex3'], ##0奖品一;1奖品二;2奖品三 增加券 prize_index=data['prize_index3'], #选择券索引;0 coupon_type=data['coupon_type3'], #类型;0代金券;1礼品券 used_index=data['used_index3'], #使用券0为第一张券;以此类推 prize_name=data['prize_name3'], #奖品名称 pname_index=data['pname_index3'], #奖品名称元素索引;0为奖品一;1为奖品二;2为奖品三 prize_value=data['prize_value3'], #兑换所需人数 pvalue_index=data['pvalue_index3'], #兑换所需人数元素索引;0为奖品二;1为奖品3 upload=data['upload3'], #上传1,奖品一 upload1=data['upload3_3'] #上传2,奖品一 ) #>>>>>>>>>>页面配置<<<<<<<<<<<<<<<<<<<< #文字及按钮颜色;1白色;2黑色 self.ac.click_font_color(data['font_color']) #顶部宣传图上传 self.ac.click_ac_upload(data['upload7'], os.path.join(gl.dataPath, 'upload.png')) #主题背景色 self.ac.input_back_ground(data['backgd_color']) #>>>>>>>>>>分享配置<<<<<<<<<<<<<<<<<<<< self.ac.input_share_title(data['share_title']) #小程序分享图片上传 self.ac.click_ac_upload(data['upload8'], os.path.join(gl.dataPath, 'upload.png')) self.ac.wait(3000) #保存 self.ac.click_save_button() #断言 增加后,列表显示该标题 self.assertTrue(self.ac.assert_add_success(data['activity_name'])) #删除该数据 #删除 0第一条,1第二条,以此类推 self.ac.click_delete_button(data['delete_index']) #删除确认 self.ac.click_confirm_button()
class TestCouponListPage(unittest.TestCase): """券管理""" @classmethod def setUpClass(cls): cls.driver = select_Browser_WebDriver() cls.url = join_url('/activity/manage') @classmethod def tearDownClass(cls): cls.driver.quit() # pass @ddt.data(*get_data('couponListPage', 'CASE1')) @reply_case_fail(num=3) def testCase1(self, data): """创建券""" print('========★{}★========'.format(data['case_desc'])) #case描述 self.clist = CouponList(self.url, self.driver, data['title']) # 打开创建营销活动页面 self.clist.open # 券管理 self.clist.clickCouponManage_Link() #获取当前券列表,券数量 old_num = self.clist.getCouponNum() # 创建新的券 self.clist.clickCouponCreate_Btn() # 选择券类型,0代金券;1礼品券;2券包 self.clist.clickCouponType(data['couponType']) # 属性;0普通;1微信群发消息专用 self.clist.clickCouponPro(data['property']) # 面值 self.clist.inputCouponValue(data['inputValue']) # 名称;op=1清空输入框 self.clist.inputCouponName(data['name'], op=1) #固定价值 self.clist.input_number_text(data['number']) # 客户端展示券名称;0显示;1不显示 self.clist.clickCouponShowName(data['clientShow']) # 起用金额 self.clist.inputCouponMinValue(data['minValue']) # 每次消费最多张数 self.clist.inputCouponSheets(data['dealNum']) # 与其它券混合使用;0可以;1不可以;2部分可以 self.clist.clickCouponMix(data['mixUsed']) # 券是否可以转赠给好友 self.clist.clickCouponGiveFriend(data['isGiveFriend']) # 启用时间,0为当日启用,输入其它按天数启用 self.clist.inputCouponEnabledTime(data['enabledTime']) # 有效期 self.clist.inputCouponTerm( op=data['termTimeOption'], text=data['termTime'], startDate=data['termStartTime'], endDate=data['termEndTime'] ) # 时间段设置;0为全天可用;1为自动化全天 self.clist.clickCouponEatTime(data['eatTime']) #限制与说明 self.clist.inputCouponArea(data['restriction']) #保存,提交 self.clist.clickCouponSave() #提交,确认 self.clist.clickCouponConfirm() #当前券数量 new_num = self.clist.getCouponNum() #断言增加券是否成功 self.assertTrue( self.clist.assertAddCoupon(old_num, new_num) )