zoukankan      html  css  js  c++  java
  • APP——自动化——python——设置网络模式

    # 计算器:     C:Usersdel>adb shell dumpsys window w |findstr / |findstr name=
    #              mSurface=Surface(name=com.youba.calculate/com.youba.calculate.MainActivity)            #adb命令查看包名和启动activity
    
    #com.youba.calculate:id/btn_plus  +
    #com.youba.calculate:id/btn_equal  =
    
    
    #凤凰网:   C:Usersdel>adb shell dumpsys window w |findstr / |findstr name=
    #           mSurface=Surface(name=com.ifext.news/com.ifeng.news2.activity.IfengTabMainActivity)
    
    
    #baidu :C:Usersdel>adb shell dumpsys window w |findstr / |findstr name=
    #      mSurface=Surface(name=com.baidu.searchbox/com.baidu.searchbox.MainActivity)
    
    import time
    from appium import webdriver
    
    desired_caps = {
        'platformName': 'Android',             #待测试手机的系统
        'deviceName':'57X0217421001470',     #使用手机或模拟器的类型
        'platformVersion': '9.0.0',                         #待测手机系统版本 安卓版本
         "unicodeKeyboard":"true",   #支持中文输入,会自动安装unicode输入法,默认是false
         "resetKeyboard":"true",    #如果设置了中文输入为true,此设置为自动化退出后,重置输入法到原来状态
        "autoGrantPermissions":"true",   #获取所有权限
        'app': 'C:\Users\del\Desktop\b\jsq.apk',         #手机未按照待测app时,设置安装路径、包名、启动activity
        'appPackage': 'com.youba.calculate',
        'appActivity': 'com.youba.calculate.MainActivity',
    }
    
    
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
    
    time.sleep(5)
    
    print(driver.network_connection)  # 显示6            6:网络全开          wife  流量都开
    
    time.sleep(10)
    
    
    print('#---------------------------------------------------------1')
    
    driver.set_network_connection(1)
    
    time.sleep(10)
    
    print(driver.network_connection)        #显示1        1:飞行模式
    
    
    print('#---------------------------------------------------------2')
    
    time.sleep(10)
    
    
    driver.set_network_connection(2)
    
    time.sleep(10)
    
    print(driver.network_connection)         # 显示2          2:开wifi
    
    
    print('#---------------------------------------------------------3')
    
    
    time.sleep(10)
    
    driver.set_network_connection(4)
    
    time.sleep(10)
    
    print(driver.network_connection)           #    显示4            4:开流量
    
    print('#---------------------------------------------------------4')
    
    
    
    time.sleep(10)
    
    driver.set_network_connection(0)
    
    time.sleep(10)
    
    print(driver.network_connection)       # 显示为0            没wife  没网络  没流量
    
    print('#---------------------------------------------------------5')
    
    time.sleep(10)
    
    driver.quit()

    执行结果:

    6
    #---------------------------------------------------------1
    1
    #---------------------------------------------------------2
    4
    #---------------------------------------------------------3
    0
    #---------------------------------------------------------4
    0
    #---------------------------------------------------------5

     ===================================================================================

    2、获取当前activity 

    driver.currentActivity();


    3、获取当前网络状态

    driver.getConnection().name();


    4、设置网络

    driver.setConnection(Connection.ALL);//wifi和流量都打开
    driver.setConnection(Connection.DATA);//移动流量模式driver.setConnection(Connection.WIFI);//wifi模式
    driver.setConnection(Connection.NONE);//关闭所有
    driver.setConnection(Connection.AIRPLANE);//飞行模式

    ====================================================================================

    参考网址:https://blog.csdn.net/E_I_F/article/details/105386227

    #获取当前网络关启状态 driver.network_connection

    #返回数字 1:飞行模式 2:只开wifi 4:只开流量 6:网络全开

    #设置网络网络关启状态 driver.set_network_connection(connection_type)

    网络关起状态对应表

    from appium.webdriver.connectiontype import ConnectionType
    driver.set_network_connection(ConnectionType.AIRPLANE_MODE)

    import time
    from appium import webdriver
    from appium.webdriver.connectiontype import ConnectionType
    
    desired_caps = {
        'platformName': 'Android',             #待测试手机的系统
        'deviceName':'57X0217421001470',     #使用手机或模拟器的类型
        'platformVersion': '9.0.0',                         #待测手机系统版本 安卓版本
         "unicodeKeyboard":"true",   #支持中文输入,会自动安装unicode输入法,默认是false
         "resetKeyboard":"true",    #如果设置了中文输入为true,此设置为自动化退出后,重置输入法到原来状态
        "autoGrantPermissions":"true",   #获取所有权限
        'app': 'C:\Users\del\Desktop\b\jsq.apk',         #手机未按照待测app时,设置安装路径、包名、启动activity
        'appPackage': 'com.youba.calculate',
        'appActivity': 'com.youba.calculate.MainActivity',
    }
    
    
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
    
    time.sleep(5)
    
    print(driver.network_connection)  # 显示6            6:网络全开          wife  流量都开
    
    time.sleep(10)
    
    
    print('#---------------------------------------------------------1')
    
    driver.set_network_connection(1)
    
    time.sleep(10)
    
    print(driver.network_connection)        #显示1        1:飞行模式
    
    
    print('#---------------------------------------------------------2')
    
    time.sleep(10)
    
    
    driver.set_network_connection(2)
    
    time.sleep(10)
    
    print(driver.network_connection)         # 显示2          2:开wifi
    
    
    print('#---------------------------------------------------------3')
    
    
    time.sleep(10)
    
    driver.set_network_connection(4)
    
    time.sleep(10)
    
    print(driver.network_connection)           #    显示4            4:开流量
    
    print('#---------------------------------------------------------4')
    
    
    
    time.sleep(10)
    
    driver.set_network_connection(0)
    
    time.sleep(10)
    
    print(driver.network_connection)       # 显示为0            没wife  没网络  没流量
    
    print('#---------------------------------------------------------5')
    
    time.sleep(10)
    driver.set_network_connection(ConnectionType.AIRPLANE_MODE)
    driver.quit()
  • 相关阅读:
    ntohs, ntohl, htons,htonl的比较和详解【转】
    Device Tree 详解【转】
    浅析Linux DeviceTree【转】
    【spring boot】spring boot 拦截器
    【jQuery】jQuery/js 判断字符串是否JSON字符串
    【java】java中的 &= 和 |= 和 ^= 的区别
    zabbix创建触发器、action,发送报警邮件
    html iframe禁用右键
    mysql数据库mysqldump方式备份
    JDK8新特性
  • 原文地址:https://www.cnblogs.com/xiaobaibailongma/p/13194949.html
Copyright © 2011-2022 走看看