Beispiel #1
0
 def __init__(self):
     #执行控制台的命令使用
     self.dos = DosCmd()
     #获取设备devices的集合
     self.device_list = self.get_devices()
     #yaml的操作类
     self.write_file = WriteUserCommand()
Beispiel #2
0
 def android_driver(self, i):
     # devices_name adb devices
     # port
     write_file = WriteUserCommand()
     device = write_file.get_value('user_info_' + str(i), 'deviceName')
     port = write_file.get_value('user_info_' + str(i), 'port')
     start_t = time.time()
     capabilities = {
         "platformName": "Android",
         # "automationName": "UiAutomator2",
         "deviceName": device,
         "app": "../data/JZB_7.0.8-website-release.apk",
         "noReset": "true",
         "unicodeKeyboard": "true",
         "resetKeyboard": "true"
     }
     try:
         driver = webdriver.Remote('http://localhost:' + port + '/wd/hub',
                                   capabilities)
         logger.info(
             "{0} Start Android device <{1}>, Spend {2} seconds".format(
                 success, device, round(time.time() - start_t, 2)))
         time.sleep(10)
         return driver
     except Exception:
         logger.info(
             "{0} Unable to Start Android device <{1}>, Spend {2} seconds".
             format(fail, device, round(time.time() - start_t, 2)))
         raise
Beispiel #3
0
class BaseDriver(object):
    def __init__(self):
        self.write_file = WriteUserCommand()

    def android_driver(self, i):
        print "this is android_driver:", i
        platformVersion = self.write_file.get_value("user_info_" + str(i),
                                                    'platformVersion')
        deviceName = self.write_file.get_value("user_info_" + str(i),
                                               'deviceName')
        port = self.write_file.get_value("user_info_" + str(i), 'port')
        desired_caps = {}
        desired_caps['platformName'] = "android"  #设备类型
        #desired_caps['automationName'] = "UiAutomator2"#toast提示
        desired_caps['platformVersion'] = platformVersion  #系统版本号
        desired_caps['deviceName'] = deviceName  #设备号
        desired_caps['App'] = "F:/heshidaiapppakage/heshidai.apk"  #APP路径
        desired_caps['appPackage'] = "com.heshidai.app"  #应用包名
        desired_caps[
            'appActivity'] = "com.heshidai.app.activity.finance.WelcomeActivity"  #应用的activity
        desired_caps['unicodeKeyboard'] = "True"  #Unicode类型
        desired_caps['resetKeyboard'] = "True"  #不显示键盘
        #desired_caps['noReset'] = "true"#不会重复安装APP
        self.driver = webdriver.Remote('http://localhost:' + port + '/wd/hub',
                                       desired_caps)
        time.sleep(20)
        return self.driver

    def ios_driver(self):
        pass

    def get_driver(self):
        pass
Beispiel #4
0
def get_count():
    """
    获取设备数量
    """
    write_user_file = WriteUserCommand()
    count = write_user_file.get_file_lines()
    return count
Beispiel #5
0
	def android_driver(self,i):

		#print "this is android_driver:",i
		#devices_name adb devices
		#port
		write_file = WriteUserCommand()
		devices = write_file.get_value('user_info_'+str(i),'deviceName')
		port = write_file.get_value('user_info_'+str(i),'port')
		capabilities = {
		  "platformName": "Android",
		  #"automationName":"UiAutomator2",
		  "deviceName": devices,
		 	# "deviceName": '85U8PBFE99999999',
		  "app": "E:\\Chrome_320208401.apk",

		  "noReset":"true",
		  "platforVersion":"5.1",
		  "appPackage":"cn.com.open.mooc"
		  #"newCommandTimeout":'180'
		}
		driver = webdriver.Remote("http://127.0.0.1:"+port+"/wd/hub",capabilities)
		# driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", capabilities)
		time.sleep(10)
		
		return driver
Beispiel #6
0
    def android_driver(self, i, type):
        print("this is android_driver:", i)
        # devices_name adb devices
        write_file = WriteUserCommand()
        ini_dir = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
        read_ini = ReadIni(ini_dir + "//config/ApplyConfig.ini")

        devices = write_file.get_value('user_info_' + str(i), 'deviceName')
        port = write_file.get_value('user_info_' + str(i), 'port')
        apk_name = read_ini.get_value("apk", type)
        appPackage = read_ini.get_value("package_name", type)
        appWaitActivity = read_ini.get_value("activity", type)
        noReset = read_ini.get_value("noReset", type)

        capabilities = {
            "platformName": "Android",
            # "automationName":"UiAutomator2",
            "deviceName": devices,
            "app": apk_name,
            "appWaitActivity": appWaitActivity,
            "noReset": noReset,
            "platforVersion": "4.4.4",
            "appPackage": appPackage,
            # "chromedriverExecutableDir": ini_dir + "\config\chromedriver\webview",
            'recreateChromeDriverSessions': True
        }
        driver = webdriver.Remote("http://127.0.0.1:" + port + "/wd/hub",
                                  capabilities)
        time.sleep(10)
        return driver
Beispiel #7
0
class Driver:
    def __init__(self):
        self.write_file = WriteUserCommand()

    def android_driver(self, i):
        devices = self.write_file.get_yaml_value('user_info_' + str(i),
                                                 'deviceName')
        port = self.write_file.get_yaml_value('user_info_' + str(i), 'port')
        capabilities = {
            "platformName": "Android",
            # "automationName": "UiAutomator2",
            "deviceName": devices,
            "app": r"E:\apk\QQ.apk",
            "appWaitActivity": "com.tencent.mobileqq.activity.LoginActivity",
            # "waitActivity": "",
            "noReset": "True"
        }
        driver = webdriver.Remote("http://127.0.0.1:" + port + "/wd/hub",
                                  capabilities)
        time.sleep(5)
        return driver

    def quit_driver(self, i):
        self.android_driver(i).quit()

    def ios_driver(self):
        pass

    # 如果设备是android 就getandroi_driver 如果是ios ...
    def get_driver(self):
        pass
Beispiel #8
0
class BaseDriver:
    def __init__(self):
        self.write_file = WriteUserCommand()

    def android_driver(self, i):
        deviceName = self.write_file.get_value('user_info_' + str(i),
                                               'deviceName')
        port = self.write_file.get_value('user_info_' + str(i), 'port')
        desired_caps = {
            'platformName': 'Android',
            # 'platformVersion': '7.1.2',
            'deviceName': deviceName,
            # 自动确定确定应用权限
            'autoGrantPermissions': 'true',
            'unicodeKeyboard': 'true',
            'resetKeyboard': 'true',
            'automationName': 'Uiautomator2',
            # 'app': 'E:\\pythonProject\\appiumTest\\nurotron\APP\\app-debug.apk',
            'app': PATH('../app/app-debug.apk'),  # 不会覆盖安装
            'noReset': 'true'
        }
        driver = webdriver.Remote('http://localhost:' + str(port) + '/wd/hub',
                                  desired_caps)
        time.sleep(10)
        return driver

    def ios_driver(self):
        pass

    def get_driver(self):
        pass
Beispiel #9
0
 def android_driver(self, i):
     print("this is android_driver:", i)
     #devices_name adb devices
     #port
     write_file = WriteUserCommand()
     devices = write_file.get_value('user_info_' + str(i), 'deviceName')
     port = write_file.get_value('user_info_' + str(i), 'port')
     # capabilities = {
     #   "platformName": "Android",
     #   #"automationName":"UiAutomator2",
     #   "deviceName": devices,
     #   "app": "D:/mukeappium/app/MojiWeather.apk",
     #   "appWaitActivity":"com.moji.mjweather.LauncherActivity",
     #   "noReset":"true",
     #   # "platforVersion":"4.4.4",
     #   "appPackage":"com.moji.mjweather"
     #   #"newCommandTimeout":'180'
     # }
     caps = {}
     caps["platformName"] = "Android"
     caps["deviceName"] = devices
     caps['app'] = "D:/mukeappium/app/MojiWeather.apk"
     caps["appPackage"] = "com.moji.mjweather"
     caps["appActivity"] = "com.moji.mjweather.LauncherActivity"
     # caps['app'] = "C:/Users/Administrator/Desktop/111111.apk"
     # caps["appPackage"] = "net.changjinglu.mall"
     # caps["appActivity"] = "net.changjinglu.mall.HomeActivity"
     caps["noReset"] = "true"
     # caps["noSign"]: "true"
     driver = webdriver.Remote("http://localhost:" + str(port) + '/wd/hub',
                               caps)
     time.sleep(10)
     # driver = webdriver.Remote("http://127.0.0.1:"+port+"/wd/hub",capabilities)
     # time.sleep(10)
     return driver
def get_android_driver():
        write_file=WriteUserCommand()
        i = 0
        # 获取第一个device的deviceName i代表的是第n个手机
        deviecs = write_file.get_yaml_value('user_info_'+str(i),'deviceName')
        # 获取第一个device的port
        port=write_file.get_yaml_value('user_info_' + str(i), 'port')
        desired_caps = {
            'platformName': 'Android',
            'platformVersion': '9.1.0',
            'deviceName': deviecs,
            'app': '/Users/lumi/Desktop/apk/commonfile_apk_5ac6e5d37cc13085a6b4b30f66a18113.apk',
            "automationName": "UiAutomator2",
            # 切换Activity
            'appActivity': 'com.xiaomi.smarthome.SmartHomeMainActivity',
            # "appWaitActivity": "cn.com.open.mooc.user.register.MCPhoneRegisterAty",
            # 是否重置安装应用  执行的时候不会到指引页面
            'noReset': 'true',
            # 最新版本的这两个参数不需要配置
            # desired_caps['appActivity'] = ''
            # desired_caps['appPackage'] = ''
            'unicodeKeyboard' : 'true',
            'resetKeyboard':'true'
        }
        driver = webdriver.Remote('http://localhost:'+str(port)+'/wd/hub', desired_caps)
        print('启动driver',driver)
        print('首页的activity:',driver.current_activity)
        driver.wait_activity(driver.current_activity,25)
        return driver
Beispiel #11
0
def get_count():
    """
    获取yaml文件行数  即字典大小 以启动线程数量
    :return:
    """
    write_user_file = WriteUserCommand()
    count = write_user_file.get_yaml_lines()
    return count
Beispiel #12
0
 def __init__(self):
     self.dos_cmd = DosCmd()
     self.result = self.dos_cmd.execute_cmd_result('adb devices')
     #['List of devices attached ', '127.0.0.1:62001\tdevice', '127.0.0.1:62025\tdevice']
     self.write_user_command = WriteUserCommand()
     self.port = Port()
     self.pport = self.port.create_port_list('4705', self.get_devices())
     self.bpport = self.port.create_port_list('4900', self.get_devices())
Beispiel #13
0
 def __init__(self):
     self.doscmd = Doscmd()
     write_file = WriteUserCommand()
     self.devices = write_file.get_value('user_info_' + str(0),
                                         'deviceName')
     self.doscmd.execute_cmd(
         "/Users/kang/Library/Android/sdk/platform-tools/adb -s " +
         self.devices +
         " shell am startservice ca.zgrs.clipper/.ClipboardService")
Beispiel #14
0
 def get_from_phone(self, i, time, nickname):
     write_file = WriteUserCommand()
     devices = write_file.get_value('user_info_' + str(i // 2),
                                    'deviceName')
     self.doscmd.execute_cmd(
         "adb -s " + devices +
         " shell ls sdcard/tencent/micromsg/WeiXin/mmexport" + str(time) +
         "*.jpg | tr '\r' ' ' | xargs -n1 -I '{}' adb pull {} /Users/kang/Documents/github/Appuim_py/screenshots/"
         + str(time) + str(nickname) + ".jpg")
Beispiel #15
0
 def android_driver(i):
     print "this is android_driver:", i
     write_file = WriteUserCommand()
     devices = write_file.get_value('user_info_' + str(i), 'deviceName')
     port = write_file.get_value('user_info_' + str(i), 'port')
     capabilities = {
         "platformName": "Android",
         "deviceName": devices,
         "app": PATH("../../apps/yhjs-debug-3.3.0-android_yingyong_market.apk"),
         "noReset": False,
         "appPackage": "com.kingkr.kuhtnwi",
         "appWaitActivity": ".ui.main.MainActivity",
     }
     driver = webdriver.Remote("http://127.0.0.1:" + port + "/wd/hub", capabilities)
     time.sleep(10)
     return driver
Beispiel #16
0
 def android_driver(self, i, appPackage, appActivity):
     #device_name
     #port
     write_file = WriteUserCommand()
     devices = write_file.get_value('user_info_' + str(i // 2),
                                    'deviceName')
     port = write_file.get_value('user_info_' + str(i // 2), 'port')
     capabilities = {
         "platformName": "Android",
         "deviceName": devices,
         "appPackage": appPackage,
         #activity 选哪一个 要研究透彻 appAwaitActivity
         "appActivity": appActivity,
         "unicodeKeyboard": "true"
     }
     driver = webdriver.Remote("http://127.0.0.1:" + str(port) + "/wd/hub",
                               capabilities)
     return driver
Beispiel #17
0
class BaseDriver():
    def __init__(self, i):
        self.write_user = WriteUserCommand()
        # self.deviceName = self.write_user.get_value(str(i),'deviceName')
        self.udid = self.write_user.get_value(str(i), 'udid')
        self.port = self.write_user.get_value(str(i), 'port')

    def Android_driver(self):
        capabilities = {
            "platformName": "Android",
            "automationName": "UiAutomator2",  # 平台,默认Appium,为了抓取tost
            # "deviceName": "29aaf4ef",
            "deviceName": self.deviceName,
            "app": "D:\\python\\pythonlearning\\appium\\mukewang.apk",
            #  "app":"D:\\python\\pythonlearning\\appium\\mukewang_7110.apk",#最新的app,没有登录
            # "app": "D:\\python\\pythonlearning\\appium\\gsfw-Android_standard_dev-490.apk",
            # "appWaitActivity":"cn.com.open.mooc.index.splash.MCSplashActivity",#4723
            "noReset": "true",  # 配置TRUE不是安装后首次进入页面
        }
        content = "http://127.0.0.1:" + str(self.port) + "/wd/hub"
        driver = webdriver.Remote(content, capabilities)
        time.sleep(15)
        return driver

    def Ios_driver(self):
        capabilities = {
            # 平台名称
            'platformName': 'iOS',
            # 平台版本
            'platformVersion': '13.3',  #系统号
            # 设备名称
            'deviceName': 'iPhone X',  #虚拟机设备型号
            "udid": self.udid,  #设备号
            "automationName": "XCUITest",
            "bundleId": "net.csdn.CsdnPlus",
            'app': '/Users/luqiuyan/luqy/CSDN 4.0.7.ipa',
            # 超时时间
            'newCommandTimeout': 30,
            # 自动化测试平台
            # 'automationName': 'Appium',
            # 是否不重新安装启动
            # 'noReset': True
            # 自动处理系统权限弹框
            # `autoAcceptAlerts`:True 低版本有效
        }

        content = "http://127.0.0.1:" + str(self.port) + "/wd/hub"
        driver = webdriver.Remote(content, capabilities)
        time.sleep(15)
        return driver

    def get_driver(self):
        pass

    def quit_driver(self):
        self.Ios_driver.quit()
Beispiel #18
0
	def android_driver(self,i):
		print ("this is android_driver:",i)
		#devices_name adb devices
		#port
		write_file = WriteUserCommand()
		devices = write_file.get_value('user_info_'+str(i),'deviceName')
		port = write_file.get_value('user_info_'+str(i),'port')
		capabilities = {
		  "platformName": "Android",
		  #"automationName":"UiAutomator2",
		  "deviceName": devices,
		  "app": "E:\\PythonAppium\\AutoTestAppium\\apps\\mukewang.apk",
		  "appWaitActivity":"cn.com.open.mooc.user.login.MCLoginActivity",
		  "noReset":"true",
		  "platforVersion":"4.4.4",
		  "appPackage":"cn.com.open.mooc"
		  #"newCommandTimeout":'180'
		}
		driver = webdriver.Remote("http://127.0.0.1:"+port+"/wd/hub",capabilities)
		time.sleep(10)
		return driver
Beispiel #19
0
 def create_command_list(self, i):
     """
     启动appium    拼接 appium -p -bp -U
     :argument
     :return:
     """
     write_file = WriteUserCommand()
     command_list = []
     appium_port_list = self.create_port_list(4700)  # 传入start_port,生成p端口列表
     bootstrap_port_list = self.create_port_list(4900)  # 生成bp端口列表
     devices_list = self.device_list  # 获取设备信息列表
     # for i in range(len(devices_list)):
     # 拼接命令
     command = "appium -p " + str(appium_port_list[i]) + " -bp " + str(
         bootstrap_port_list[i]) + " -U " + str(
             devices_list[i]) + " --no-reset --session-override"
     # 把命令添加到command_list
     command_list.append(command)
     write_file.write_data(i, devices_list[i], str(bootstrap_port_list[i]),
                           str(appium_port_list[i]))
     # 返回拼接好的命令,后续只需要循环这些命令
     return command_list
Beispiel #20
0
class BaseDrvier:
    def __init__(self):
        self.write_file = WriteUserCommand()
        self.server = Server()

    def android_driver(self, i):
        # devices_name
        # port
        #
        # self.server.main_server()
        print('wait.... this is androd_driver:', i)
        time.sleep(10)
        self.device_name = self.write_file.get_value('user_info_' + str(i),
                                                     'deviceName')
        self.port = self.write_file.get_value('user_info_' + str(i), 'port')
        print(self.device_name, '-------devices_name')
        print(self.port, '-------port')

        desired_caps = {
            "platformName": "Android",
            "deviceName": self.device_name,
            "platformVersion": "5.1.1",
            "app": "D:\student_v3.5_sxreader.apk",
            "appActivity":
            "com.zjmy.sxreader.studet.presenter.activity.login.LoginActivity",
            "noReset": "true",
            "automationName": "uiautomator2"
        }
        driver = webdriver.Remote(
            'http://127.0.0.1:' + str(self.port) + '/wd/hub', desired_caps)
        time.sleep(3)
        return driver

    def ios_drvier(self):
        pass

    def get_drvier(self):
        pass
Beispiel #21
0
 def android_driver(self, i):
     tool = Tools()
     rootpath = tool.getRootPath()
     apkpath = os.path.join(rootpath, 'apks', 'cnode.apk')
     # devices_name adb devices
     # port
     write_file = WriteUserCommand()
     devices = write_file.get_value('user_info_' + str(i), 'deviceName')
     print("devices=======================================================",
           devices, "==============================================")
     port = write_file.get_value('user_info_' + str(i), 'port')
     capabilities = {
         "platformName": "Android",
         "deviceName": devices,
         # "automationName":"UiAutomator2",
         "appActivity": "org.cnodejs.android.md.ui.activity.LaunchActivity",
         # "appWaitActivity": "org.cnodejs.android.md.ui.activity.LaunchActivity",
         "noReset": "true",
         "unicodeKeyboard": "true",
         "resetKeyboard": "true",
         "appPackage": "org.cnodejs.android.md"
     }
     return webdriver.Remote("http://127.0.0.1:" + port + "/wd/hub",
                             capabilities)
Beispiel #22
0
    def android_driver(self, i):
        # devices_name adb devices
        # port
        write_file = WriteUserCommand()
        # devices = write_file.get_value('user_info_' + str(i), 'deviceName')
        devices = '127.0.0.1:21503'

        # port = write_file.get_value('user_info_' + str(i), 'port')
        port = '4723'
        capabilities = {
            "platformName": "Android",
            "deviceName": devices,
            "appActivity": "com.ofbank.lord.activity.MainActivity",
            "appPackage": "com.ofbank.lord",
            "noReset": "true"
        }
        driver = webdriver.Remote("http://127.0.0.1:" + port + "/wd/hub",
                                  capabilities)
        # time.sleep(10)
        return driver
Beispiel #23
0
 def __init__(self):
     self.write_file = WriteUserCommand()
Beispiel #24
0
 def __init__(self):
     self.write_file = WriteUserCommand()
     self.server = Server()
Beispiel #25
0
 def __init__(self, i):
     self.write_user = WriteUserCommand()
     # self.deviceName = self.write_user.get_value(str(i),'deviceName')
     self.udid = self.write_user.get_value(str(i), 'udid')
     self.port = self.write_user.get_value(str(i), 'port')
Beispiel #26
0
class Server:
    def __init__(self):
        self.dos = DosCmd()
        self.device_list = self.get_devices()
        self.write_file = WriteUserCommand()

    def get_devices(self):
        '''
		获取设备信息
		'''

        devices_list = []
        result_list = self.dos.excute_cmd_result('adb devices')
        if len(result_list) >= 1:
            for i in result_list:
                devices_list.append(i)
                print(devices_list)
                # if 'List' in i:
                # 	continue
                # devices_info = i.split('\t')
                # if devices_info[1] == 'device':
                # 	devices_list.append(devices_info[0])
            return devices_list
        else:
            return None

    def create_port_list(self, start_port):
        '''
		创建可用端口
		'''
        port = Port()
        port_list = []
        port_list = port.create_port_list(start_port, self.device_list)
        return port_list

    def create_command_list(self, i):
        '''
		生成命令
		'''
        #appium -p 4700 -bp 4701 -U 127.0.0.1:21503

        command_list = []
        appium_port_list = self.create_port_list(4700)
        bootstrap_port_list = self.create_port_list(4900)
        device_list = self.device_list
        # command = "appium -p "+str(appium_port_list[i])+" -bp "+str(bootstrap_port_list[i])+" -U "+device_list[i]+" --no-reset --session-override --log E:/Teacher/Imooc/AppiumPython/log/test02.log"
        command = 'appium -p ' + str(appium_port_list[i]) + ' -bp ' + str(
            bootstrap_port_list[i]
        ) + ' -U ' + device_list[i] + ' --no-reset --session-override'
        #appium -p 4723 -bp 4726 -U 127.0.0.1:62001 --no-reset --session-override --log E:/Teacher/Imooc/AppiumPython/log/test01.log
        command_list.append(command)
        self.write_file.write_data(i, device_list[i],
                                   str(bootstrap_port_list[i]),
                                   str(appium_port_list[i]))
        return command_list
#
#

    def start_server(self, i):
        '''
		启动服务
		'''
        self.start_list = self.create_command_list(i)
        print(self.start_list)

        self.dos.excute_cmd(self.start_list[0])

    def kill_server(self):
        server_list = self.dos.excute_cmd_result('tasklist | find "node.exe"')
        if len(server_list) > 0:
            self.dos.excute_cmd('taskkill -F -PID node.exe')
        else:
            return '当前无 Node.exe 进程!'
#

    def main(self):
        thread_list = []
        self.kill_server()
        self.write_file.clear_data()
        for i in range(len(self.device_list)):
            appium_start = threading.Thread(target=self.start_server,
                                            args=(i, ))
            thread_list.append(appium_start)
        for j in thread_list:
            j.start()
        time.sleep(25)
Beispiel #27
0
 def __init__(self):
     self.cmd = Command()
     self.port = Port()
     self.write_user_command = WriteUserCommand()
     self.device_list = self.get_devices()
Beispiel #28
0
class Server:
    def __init__(self):
        self.cmd = Command()
        self.port = Port()
        self.write_user_command = WriteUserCommand()
        self.device_list = self.get_devices()

    def get_devices(self):
        """
        获取设备信息
        :return:
        """
        result_list = self.cmd.excute_command_result("adb devices")
        device_list = []
        if len(result_list) > 1:
            for d in result_list:
                if d == 'List of devices attached':
                    continue
                elif '\tdevice' in d:
                    device_list.append(d.replace('\tdevice', ''))
            return device_list
        else:
            return None

    def create_port_list(self, start_port):
        port_list = self.port.create_port_list(start_port, self.device_list)
        return port_list

    def create_command_list(self, i):
        command_list = []
        appium_port_list = self.create_port_list(4700)
        bootstrap_list = self.create_port_list(4900)
        command = "appium -p " + str(appium_port_list[i]) + " -bp " + str(bootstrap_list[i]) + " -U " + self.device_list[i] + \
                  " --no-reset --session-override --log appium.log"
        command_list.append(command)
        self.write_user_command.write_data(i, self.device_list[i],
                                           bootstrap_list[i],
                                           appium_port_list[i])
        # port device 配对关系写入配置文件,base文件读取
        return command_list

    def start_server(self, i):
        """
        启动服务
        :return:
        """
        appium_command = self.create_command_list(i)
        self.cmd.excute_command(appium_command)

    def kill_server(self):
        """
        杀掉之前的进程
        :return:
        """
        server_list = self.cmd.excute_command_result("ps -ef | grep node")
        if server_list:
            self.cmd.excute_command("killall node")

    def main(self):
        """
        多线程启动appium
        :return:
        """
        self.kill_server()
        self.write_user_command.clear_data()
        appium_list = []
        for i in range(len(self.device_list)):
            appium_t = threading.Thread(target=self.start_server, args=(i, ))
            print("id: ", i)
            appium_list.append(appium_t)
        [i.start() for i in appium_list]
Beispiel #29
0
 def __init__(self):
     self.dos = DosCmd()
     self.device_list = self.get_devices()
     self.write_file = WriteUserCommand()
Beispiel #30
0
    # suite.addTest(CaseTest('test_01'))
    print('this is get suite 中的 i :', i)
    suite.addTest(CaseTest('test_fail', parame=i))
    suite.addTest(CaseTest('test_suc', parame=i))
    # unittest.TextTestRunner().run(suite)
    html_file = "../report/report%s.html" % i
    fp = open(html_file, 'wb')
    runner = HTMLTestRunner.HTMLTestRunner(stream=fp)
    runner.run(suite)
    fp.close()


if __name__ == '__main__':
    # unittest.main()
    appium_init()
    write_file = WriteUserCommand()
    lines = write_file.get_data_lines()
    if lines != None:

        print('this is lines value: ', lines)
        threads = []
        for i in range(lines):
            t = Process(target=get_suite, args=(i, ))
            threads.append(t)

        for j in threads:
            j.start()
            time.sleep(1)
    else:
        print('当前条件没有测试机!!!')