Exemple #1
0
# _*_ config: utf-8 _*_
# python3的MyUiautomator

import time, subprocess, os
import uiautomator2 as u2
from config.getMobile import get_mobile
from config.readConfig import readConfig
from common.log import Logger

# 获取设备信息
mobile_data = get_mobile('uiauto2_android')[1]
unlock_data = readConfig().get_unlock()
log = Logger().get_logger()


class MyUiautomator2(object):
    def connect_android(self, ip=mobile_data['ip']):
        """
        连接设备
        :param ip: 设备ip,数据线连接传入None
        """
        self.isconnect(ip)
        self.app = u2.connect(ip)  # 连接设备
        self.app.unlock()
        # self.app.healthcheck()  # 解锁屏幕(但无法解开锁屏密码)并开启uiautomator2服务

    def connect_app(self,
                    start='session',
                    appPackage=mobile_data['appPackage'],
                    secs=4):
        """
Exemple #2
0
import unittest, time
from common.MySelenium import mySelenium
from Po.testpage.kuaishou_page import kuaishou_page
from common import openPC
from common.Myadb import Myadb
from config.getMobile import get_mobile
from common.log import Logger

log = Logger('Po.testpc.kuaishou_test').get_logger()
mobile = get_mobile()[5]
command = 'adb connect ' + mobile['deviceName']     # 连接设备


class kuaishou_test(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        log.info('------------------------------------  kuaishou_test strat  --------------------------------------')
        # openPC.open_pc_yesheng()  # 打开夜神模拟器
        # openPC.open_pc_appium()     # 打开Appium
        # time.sleep(40)
        # Myadb().call_adb(command)
        # time.sleep(5)
        cls.app = mySelenium()
        cls.app.mobile(data=mobile)
        cls.ks = kuaishou_page(cls.app)

    @classmethod
    def tearDownClass(cls):
        cls.app.quit()
        log.info('------------------------------------  kuaishou_test end  --------------------------------------')
Exemple #3
0
from config.getMobile import get_mobile
from common.log import Logger
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from appium.webdriver.common.mobileby import MobileBy as By
from selenium.webdriver.common.action_chains import ActionChains
from config.getProjectPath import get_project_path
from config.readConfig import readConfig
from common.BeautifulReport import BeautifulReport
from common.MyChromedriver import ChromeDriver
# from pywinauto.application import Application

path = get_project_path()
phone_data = get_mobile()[2]  # appium选择设备和app
uiauto_phone_data = get_mobile('uiauto2_android')[1]  # uiautomator2选择设备和app
# phone_data = readConfig().get_App()
browser_data = readConfig().get_browser()
log = Logger('common.mySelenium').get_logger()
screenshot_path = os.path.join(path, 'report', 'screen_shot')
success = 'Success'
fail = 'Fail'
install_unicode = 'id->com.android.packageinstaller:id/btn_install_confirm'
img_path = os.path.join(path, 'report', 'screen_shot')


class mySelenium(object):
    def __init__(self):
        pass
Exemple #4
0
import unittest
import time
from common.MySelenium import mySelenium
from common.log import Logger
from config.getMobile import get_mobile
from config.readConfig import readConfig

log = Logger('common.Mymobile').get_logger()
phone_data = get_mobile()[1]
phone_data2 = readConfig().get_App()


class Mymobile(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        log.info("****************************************  start  **************************************************")
        cls.dr = mySelenium()
        cls.dr.mobile(phone_data)
        # enterApp_page(cls.dr).tgp_login_main()  # 登录app

    @classmethod
    def tearDownClass(cls):
        time.sleep(5)
        log.info("****************************************  end  **************************************************\n")
        cls.dr.quit()
Exemple #5
0
import time
from common.basePage import Page
from common.log import Logger
from config.getMobile import get_mobile

log = Logger('testpage.enterApp').get_logger()
phone = get_mobile()[1]
user = '******'
password = '******'
nickname = '12345678998'
"""--------------------------------------- element ----------------------------------------------------"""
tgp_login_button = 'id->com.tencent.tgp:id/qqLogin'  # tgp登录页面qq登录按钮
tgp_nav_my = 'uiautomator->我的'  # tgp导航栏我的
tgp_loginPop_login = '******'  # tgp内页弹窗马上登录按钮
tgp_updatePop_later = 'id->com.tencent.tgp:id/tv_negative'  # tgp更新弹窗以后再说按钮
tgp_infomation_confirm = 'id->com.tencent.tgp:id/registerOKButton'  # tgp完善资料页面确认按钮
tgp_infomation_prompt = 'id->com.tencent.tgp:id/registerNickTipId'  # tgp完善资料页面昵称提示文案
tgp_infomation_nickname = 'id->com.tencent.tgp:id/nickEditId'  # tgp完善资料页面昵称框
tgp_qq_warrant = 'uiautomator->登录'  # qq授权登录页面登录按钮
tgp_qqLogin_user = '******'  # qq登录页面账号框
tgp_qqLogin_pass = '******'  # qq登录页面密码框
tgp_qqLogin_button = 'id->com.tencent.mobileqq:id/login'  # qq登录页面登录按钮


class enterApp_page(Page):
    def tgp_login_main(self):
        """
        tgp登录主函数
        :return:
        """
        flag, ele = self.dr.judge_element(tgp_login_button)  # 判断app是否已登录