def get_user_balance_amount(self): text = self.user_balance_view.get_text() if text == "****": Driver.d(resourceId="com.nonoapp:id/iv_eye").click() text = self.user_balance_view.get_text() balance_amount = ''.join(text.split(',')) return balance_amount
def test_02_sign_in(self): """ 每日签到 """ HomePage().discover_view.click(timeout=20) DiscoverPage().sign_in_view.click() if Driver.d(text='签到成功').exists(timeout=3): Driver.d(text='确定').click() assert Driver.d(text='恭喜你签到成功').exists(timeout=3) Driver.screenshot()
def test_07_Auth(self): """ 认证授权 """ #点击继续填写 Driver.d(resourceId="com.maiyafenqi:id/actionTV").click_exists( timeout=1) time.sleep(1) Driver.d(resourceId="com.maiyafenqi:id/next_tv").click() time.sleep(1)
def test_06_check_shopping(self): """ 检查会员商城页面 """ time.sleep(3) HomePage().discover_view.click(timeout=20) scroll('up').click(text='会员商城') scroll('up').click(text='查看更多') assert Driver.d(text='会员商城').exists(timeout=3) assert Driver.d(text='兑换记录').exists(timeout=3) assert Driver.d(text='会员专区').exists(timeout=3)
def test_04_ocr(self, amount=None): """ OCR认证 """ #进入首页 HomePage().firstpage_view.click() #调用接口进行实名认证 OCRAuth() #点击继续填写 Driver.d(resourceId="com.maiyafenqi:id/actionTV").click_exists( timeout=1)
def test_08_withdraw_records(self): """提现记录""" HomePage().click_mine_view() MinePage().withdraw_view.click() Driver.d(text=u"提现记录").click() text= Driver.d(resourceId="com.nonoapp:id/tv_wallet_record_amount").get_text() records = str(withdraw_amount-2 if withdraw_amount <20000 else withdraw_amount -3) assert records in text print('提现记录:{}'.format(text)) assert Driver.d(resourceId="com.nonoapp:id/tv_wallet_record_status").get_text() == "提现成功"
def test_05_debt_transfer_records(self): """债权转让记录""" global debt_transfer_reason HomePage().click_mine_view() # MinePage().debt_text_view.click() scroll('up').click(text='债转') Driver.d(text=u"转让记录").click() assert Driver.d(text=u"3天后下架").exists(timeout=5) assert Driver.d(text=debt_transfer_reason).exists(timeout=5) Driver.screenshot()
def test_09_FaceAuth(self): """ 人脸识别-Sql修改 """ #点击返回按钮 Driver.d(resourceId="com.maiyafenqi:id/title_left_icon").click_exists( timeout=1) #设置活体分 SETHTFen() #点击继续填写 Driver.d(resourceId="com.maiyafenqi:id/actionTV").click_exists( timeout=1) time.sleep(1)
def test_09_transaction_records_withdraw(self): """交易记录--提现""" HomePage().click_mine_view() SitTester().click("交易记录").click("提现").sleep(2) text = Driver.d(resourceId="com.nonoapp:id/tv_finance_actual_amount").get_text() records = str(withdraw_amount - 2 if withdraw_amount < 20000 else withdraw_amount - 3) assert records in text print('提现记录:{}'.format(text)) assert Driver.d(resourceId="com.nonoapp:id/tv_finance_desc").get_text() == "提现" Driver.d(resourceId="com.nonoapp:id/tv_finance_desc").click() time.sleep(3) Driver.screenshot()
def wrapper(*args,**kwargs): HomePage().click_mine_view() if not Driver.d(text="登录").exists(timeout=1): logout(Driver.d) login(Driver.d,username=username) else: LoginPage().username_view.set_text(username) LoginPage().password_view.set_text("it789123") back() LoginPage().login_view.click() Driver.d(text=u"跳过").click_exists(timeout=1) result = func(*args,**kwargs) return result
def setUpClass(cls): """启动app 并选择环境""" reset_and_start_nonoapp(Driver.d) set_env(Driver.d) time.sleep(2) Driver.d.swipe(0.87, 0.664, 0.24, 0.669) time.sleep(2) Driver.d.swipe(0.87, 0.664, 0.24, 0.669) time.sleep(2) Driver.d.swipe(0.87, 0.664, 0.24, 0.669) time.sleep(2) Driver.d.swipe(0.87, 0.664, 0.24, 0.669) time.sleep(2) Driver.d.swipe(0.87, 0.664, 0.24, 0.669) time.sleep(2) #点击滑动"跳过"按钮 Driver.d(resourceId="com.maiyafenqi:id/guide_tv").click()
def test_02_invest_yys_first(self, amount="100"): """ 月月升投资 """ HomePage().invest_view.click() InvestPage().to_yys_invest() Driver.d(text='授权出借').click() ele = Driver.d(text='进行风险评测') if ele.exists(timeout=5): ele.click() risk_evaluation_steps(Driver.d) Driver.d(text="授权出借").click() invest_pay_steps(Driver.d,amount) Driver.d(resourceId="com.nonoapp:id/btn_titlebar_right").click() info = Driver.d(resourceId="com.nonoapp:id/tv_first_des").get_text() print(info) Driver.d(resourceId="com.nonoapp:id/tv_titlebar_text_right").click() time.sleep(2) Driver.screenshot()
def test_01_sign_up(self, mobile=None): """ 注册 """ #点击麦芽首页消费分期 #Driver.d.xpath('//*[@resource-id="com.maiyafenqi:id/product_rc"]/android.view.View[1]').click() #进入我的页面 HomePage().click_mine_view() #点击立即登录 Driver.d(resourceId="com.maiyafenqi:id/iv_login").click() time.sleep(0.5) #点击注册按钮 进入注册界面 Driver.d(resourceId="com.maiyafenqi:id/register_tv").click() time.sleep(2) if mobile is None: mobile = create_iphone_no() sign_up_steps(Driver.d, mobile) time.sleep(1) #保存手机号码 ReadConfig().setResData(option="mobile", value=mobile)
def test_05_check_my_task(self): """ 检查我的任务页面 """ time.sleep(3) #显式的等待... HomePage().discover_view.click(timeout=20) # Driver.d(resourceId='com.nonoapp:id/ll_home_welfare_my_task').click(timeout=5) scroll('up').click(text='我的任务') if Driver.d(description='去邀请').exists(timeout=3): assert True elif Driver.d(text='去邀请').exists(timeout=3): assert True else: assert False if Driver.d(description='我的福利').exists(timeout=3): Driver.d(description='我的福利').click() else: Driver.d(text='我的福利').click() # assert self.d(description='去出借').exists(timeout=3) assert Driver.d(text='抵用券').exists(timeout=3) assert Driver.d(text='补贴券').exists(timeout=3) assert Driver.d(text='特权本金').exists(timeout=3) Driver.screenshot()
def recharge_steps(self, amount="100"): self.recharge_view.click() Driver.d( resourceId="com.nonoapp:id/et_recharge_amount").set_text(amount) Driver.d(resourceId="com.nonoapp:id/btn_recharge_next").click() """ 密码校验 """ Driver.d(text=u"确定").click()
def test_10_confirm(self, username=None): """ 确认借款 """ # 点击继续填写 Driver.d(resourceId="com.maiyafenqi:id/actionTV").click_exists( timeout=1) time.sleep(1) #勾选我已阅读并同意签署《非在校学生承诺函》 Driver.d(resourceId="com.maiyafenqi:id/agreement_iv").click() time.sleep(1) #点击确认按钮 Driver.d(resourceId="com.maiyafenqi:id/confirm_tv").click() time.sleep(2) #点击确认按钮 Driver.d(resourceId="com.maiyafenqi:id/btn_confirm").click() time.sleep(1)
def setUp(self): #有X的先点掉 Driver.d(resourceId="com.maiyafenqi:id/close_iv").click_exists( timeout=2) #有返回<按钮先点掉 Driver.d(resourceId="com.maiyafenqi:id/title_left_icon").click_exists( timeout=2) # 进入首页 Driver.d(resourceId="com.maiyafenqi:id/tab_text_tv", text="首页").click_exists(timeout=2)
def test_01_page_check(self): """ 发现页元素检查 """ HomePage().discover_view.click(timeout=20) assert Driver.d(text='普通会员').exists(timeout=3) assert Driver.d(text='每日签到').exists(timeout=3) # assert Driver.d(text='翻翻乐').exists(timeout=3) assert Driver.d(text='活动中心').exists(timeout=3) assert Driver.d(text='做任务 拿奖励').exists(timeout=3) assert Driver.d(text='我的任务').exists(timeout=3) assert Driver.d(text='邀请好友').exists(timeout=3) Driver.screenshot()
def test_02_login(self): """ 登录 """ HomePage().click_mine_view() #点击立即登录 Driver.d(resourceId="com.maiyafenqi:id/iv_login").click() time.sleep(0.5) #输入手机号 mobile = ReadConfig().getResData("mobile") Driver.d(resourceId="com.maiyafenqi:id/phone_et").set_text( "{}".format(mobile)) time.sleep(0.5) #输入密码 Driver.d( resourceId="com.maiyafenqi:id/password_et").set_text("it789123") time.sleep(0.5) # 收起软键盘 Driver.d.long_click(0.925, 0.517, 1) time.sleep(1) #点击登录按钮 Driver.d(resourceId="com.maiyafenqi:id/login_tv").click() time.sleep(1)
def username_view(self): return Driver.d(resourceId="com.nonoapp:id/et_username")
def test_03_buy_debt(self): """ 债转购买--首次购买 """ HomePage().invest_view.click() InvestPage().to_debt_invest() Driver.d(text=u"受让债权").click() Driver.d(resourceId="com.nonoapp:id/cb_agree_protocol").click() text = Driver.d(resourceId="com.nonoapp:id/btn_pay_detail_next").get_text() Driver.d(resourceId="com.nonoapp:id/btn_pay_detail_next").click() if text == u"余额支付": Driver.d(text="确定").click() for ele in [Driver.d(description='确定'), Driver.d(text='确定')]: if ele.exists(timeout=5): ele.click() break elif text == '充值支付': for ele in [Driver.d(description='确定'), Driver.d(text='确定')]: if ele.exists(timeout=5): ele.click() break time.sleep(1) assert Driver.d(description="出借成功").exists(timeout=4) Driver.d(resourceId="btn_next").click() Driver.screenshot() time.sleep(3)
def test_01_invest_txzt_first(self, product_pattern='3个月', amount=None): """ 贴心智投 """ amount = amount if amount is not None else random.randint(1, 10)*1000 HomePage().invest_view.click() InvestPage().to_txzt_invest() Driver.d(textContains=product_pattern).click() Driver.d(text="授权出借").click() ele = Driver.d(text='进行风险评测') if ele.exists(timeout=4): ele.click() risk_evaluation_steps(Driver.d) Driver.d(text="授权出借").click() invest_pay_steps(d=Driver.d, amount="{}".format(amount)) Driver.d(text=u"知道啦").click_exists(timeout=5) Driver.d(resourceId='com.nonoapp:id/btn_titlebar_right').click() info = Driver.d(resourceId="com.nonoapp:id/tv_first_des").get_text() print(info) Driver.d(text="完成").click() time.sleep(2) Driver.screenshot()
def register_view(self): return Driver.d(text='注册')
def click_invest_button(self): Driver.d(u"立即投资").click()
def test_07_withdraw(self, amount=None): """ 提现 """ HomePage().click_mine_view() text = MinePage().user_balance_view.get_text() if text == "****": Driver.d(resourceId="com.nonoapp:id/iv_mine_eye").click() text = MinePage().user_balance_view.get_text() balance = str_to_no(text) MinePage().withdraw_view.click() if Driver.d(text="冻结余额").exists(timeout=4): Driver.d(text="继续交易").click() else: global withdraw_amount withdraw_amount = random.randrange(3, 10000) or amount print("余额:{},\n提现:{}".format(balance,withdraw_amount)) Driver.d(resourceId="com.nonoapp:id/et_withdraw_amount").set_text(withdraw_amount) back() Driver.d(text='确认提现').click() Driver.d(text='确定').click() MockPage().confirm_button_view.click() text = MinePage().user_balance_view.get_text() balance_new = str_to_no(text) assert float(balance) - float(balance_new) == float(withdraw_amount) print('提现后剩余金额:{}'.format(balance_new)) Driver.screenshot()
def test_06_invest_nny_first(self, amount="200",): """ 散标 """ #todo: 红米note安全键盘元素大概无法定位 HomePage().invest_view.click() InvestPage().to_nny_invest() # scroll('up',duration=0.2).click(textContains="万") el = Driver.d(textContains="万") for _ in range(10): if el.exists(timeout=2): el.click() break swipe_up() Driver.d(text="立即投标").click() Driver.d(resourceId="com.nonoapp:id/et_invest_count").click() for i in list(amount): Driver.d(text=i).click() Driver.d(text='确定').click() Driver.d(resourceId="com.nonoapp:id/cb_agree_protocol").click() text = Driver.d(resourceId="com.nonoapp:id/btn_pay_detail_next").get_text() Driver.d(resourceId="com.nonoapp:id/btn_pay_detail_next").click() if text == u"余额支付": Driver.d(text="确定").click() elif text == '充值支付': confirm_button = Driver.d(text='确定') if Driver.d.device_info['serial'] == "cdc6dc40" else Driver.d(description='确定') confirm_button.click() MockPage().confirm_button_view.click() assert Driver.d(description="支付成功,等待满标").exists(timeout=5) \ or Driver.d(text="支付成功,等待满标").exists(timeout=5) Driver.d(resourceId="btn_next").click() Driver.screenshot()
def click_txzt_button(self): Driver.d(resourceId="com.nonoapp:id/btn_home_hot_cake_invest").click()
def password_view(self): return Driver.d(resourceId="com.nonoapp:id/et_password")
def click_sign_up_button(self): Driver.d(resourceId="com.nonoapp:id/btn_home_register").click()
def test_04_debt_transfer(self, reason="低价贱卖", discount="90"): """ 债权转让 """ global debt_transfer_reason debt_transfer_reason = reason HomePage().click_mine_view() scroll('up').click(text="债转") Driver.d(text=u"收款中").click() Driver.d(text=u"转让").click() Driver.d(resourceId="com.nonoapp:id/et_creditor_right_transfer_reason").set_text(reason) Driver.d(resourceId="com.nonoapp:id/et_creditor_right_transfer_discount").set_text(discount) Driver.d.press("back") Driver.d(text=u"确定转让").click() Driver.d(text=u"确定").click() time.sleep(3)