zoukankan      html  css  js  c++  java
  • 十、appium多进程启动设备

      可以使用多线程或者多进程实现,这里使用的是多进程。修改appium监听的端口号,否则会启动失败。

    # user/bin/env python
    # -*- coding:utf-8 -*-
    # __author__ = "Cc"
    
    from appium import webdriver
    import multiprocessing
    
    desired_caps_a = {'platformName': "Android", 'platformVersion':  "", 'deviceName': "", 'appPackage': "", 'appActivity': "",
                      'noReset': True, 'unicodeKeyboard': True, 'resetKeyboard': True}
    desired_caps_b = {'platformName': "Android", 'platformVersion':  "", 'deviceName': "", 'appPackage': "", 'appActivity': "",
                      'noReset': True, 'unicodeKeyboard': True, 'resetKeyboard': True}
    host_address_a = "http://localhost:4723/wd/hub"
    host_address_b = "http://localhost:4727/wd/hub"
    
    
    def start_mobile(desired_caps, host_address):
    
        """多进程启动设备
        :desired_caps:启动手机端信息
        :host_address:appium服务器端信息
        :return:driver
        """
        driver = webdriver.Remote(host_address, desired_caps)
        return driver
    
    
    desired_processes = []
    
    
    if __name__ == '__main__':
        desired_process1 = multiprocessing.Process(target=start_mobile, args=(desired_caps_a, host_address_a))
        desired_processes.append(desired_process1)
        desired_process2 = multiprocessing.Process(target=start_mobile, args=(desired_caps_b, host_address_b))
        desired_processes.append(desired_process2)
        for process in desired_processes:
            process.start()
        for process in desired_processes:
            process.join()  # 阻塞上下文环境的进程,直到调用此方法的进程结束

      

  • 相关阅读:
    29 友盟大数据--flume源码查看分析ExecSource--UmengExecSource 改造exec源 :监控目录、收集新文件---增加个守护线程不断监控目录
    28 友盟大数据--flume源码查看分析- ExecSource-参照主机名拦截器HostInterceptor ---写限速拦截器
    Demo
    分布式爬虫-Kafka监控
    SQL优化
    MySQL
    Spring
    Mybatis
    类加载器
    数据仓库分层
  • 原文地址:https://www.cnblogs.com/Cc905/p/13926336.html
Copyright © 2011-2022 走看看