Beispiel #1
0
 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
Beispiel #2
0
 def wrapper(*args, **kwargs):
     module = __import__('FundApp.TestCase', fromlist=['TestCase'])
     print("-------module-------", module)
     classname = func.__qualname__.split('.')[0]
     print("-------classname-------", classname)
     cls = getattr(module, classname)
     total = reruns
     while total >= 0:
         try:
             date = time.strftime('%Y%m%d-%H%M%S', time.localtime())
             ret = func(*args, **kwargs)
             name = func.__qualname__ + date + "SUCCESS" + '.PNG'
             Driver.screenshot(name)
             return ret
         except exceptions as e:
             date = time.strftime('%Y%m%d-%H%M%S', time.localtime())
             name = func.__qualname__ + date + "FAILED" + '.PNG'
             Driver.screenshot(name)
             if total == 0:
                 raise e
             total -= 1
             time.sleep(1)
             print(
                 "failed,try again....\n failed reason:\n{}".format(e))
             cls().setUp()
Beispiel #3
0
 def test_03_activity_center(self):
     """ 活动中心 """
     HomePage().discover_view.click(timeout=20)
     DiscoverPage().activity_center_view.click()
     Driver.screenshot()
     back()
     Driver.screenshot()
Beispiel #4
0
 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)
Beispiel #5
0
 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)
Beispiel #6
0
 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() == "提现成功"
Beispiel #7
0
    def test_04_ocr(self, amount=None):
        """  OCR认证  """
        #进入首页
        HomePage().firstpage_view.click()

        #调用接口进行实名认证
        OCRAuth()
        #点击继续填写
        Driver.d(resourceId="com.maiyafenqi:id/actionTV").click_exists(
            timeout=1)
Beispiel #8
0
 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)
Beispiel #9
0
 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
Beispiel #10
0
 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()
Beispiel #11
0
 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)
Beispiel #12
0
 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()
Beispiel #13
0
 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()
Beispiel #14
0
 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)
Beispiel #15
0
 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()
Beispiel #16
0
 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()
Beispiel #17
0
 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)
Beispiel #18
0
def run(device):
    d = Driver.init_dirver(device)
    device_path = d.device_info['model'].replace(" ", "_")
    if not os.path.exists(device_path):os.mkdir(device_path)
    os.chdir(device_path)
    print('-'*10,'\n',d,'-'*10,'\n')

    ###############资金代码#########
    # el = d(resourceId="com.nonoapp:id/iv_close")
    # eb = d(resourceId="com.nonoapp:id/ib_close")
    # watcher(el)
    # watcher(eb)

    with open('testreport.html', 'wb') as file:
        runner = HTMLTestRunner(stream=file, title=d.device_info['model'] + '自动化测试报告', description='用例执行情况:')
        runner.run(DEFAULT_TEST_SUITE)
Beispiel #19
0
 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()
Beispiel #20
0
 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)
Beispiel #21
0
 def click_sign_up_button(self):
     Driver.d(resourceId="com.nonoapp:id/btn_home_register").click()
Beispiel #22
0
 def click_invest_button(self):
     Driver.d(u"立即投资").click()
Beispiel #23
0
 def click_txzt_button(self):
     Driver.d(resourceId="com.nonoapp:id/btn_home_hot_cake_invest").click()
Beispiel #24
0
 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)
Beispiel #25
0
 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()
Beispiel #26
0
 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()
Beispiel #27
0
        assert records in text
        print('提现记录:{}'.format(text))
        assert Driver.d(resourceId="com.nonoapp:id/tv_wallet_record_status").get_text() == "提现成功"

    @testcase(reruns=2)
    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()


if __name__ == "__main__":
    d = Driver.init_dirver('192.168.37.24')
    from utils.utils import watcher
    el = d(resourceId="com.nonoapp:id/iv_close")
    watcher(el)
    # debug_case(7, 8, 9)
    debug_case(1)




Beispiel #28
0
 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()
Beispiel #29
0
 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)
Beispiel #30
0
    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()