AutoTestProjects第一个模块python控制adb,获取adb的连接状态

AutoTestProjects第一个模块python控制adb,获取adb的连接状态

一.adb安装
adb是安卓自带一个架构,我们用来测试移动端必不可少的,adb的安装和环境配置我就不在这里说了,大家自行搜索.
二,我们先创建目录ADB,新建一个adb_devices的模块,此模块只是用来判断设备的连接状态
原代码如下:

import subprocess

"""
判断adb的连接状态
"""


def check_adb_status(device_id=None):
    """
    out执行结果 成功返回0
     info 执行输出结果
    :param device_id: 设备id
    :return: 
    """
    out, info = subprocess.getstatusoutput("adb -s " + device_id + " get-state")
    print(out, info)

    if out == 0:
        if 'device' in info:
            print("[INFO] ADB is on")
            return True
        elif 'offline' in info:
            print("[WARNING] ADB device is dumb")
            return False
        else:
            print("[WARNING] ADB is abnormal: " + info)
    else:
        print("[WARNING] ADB is bad: " + info)
    return False


if __name__ == '__main__':
    check_adb_status(device_id="TNS000000044200002fd")

三 .详解:subprocess模块是比os.system()和os.popen()更高级的语法
subprocess.getstatusoutput()类介绍

Python官方推荐使用subprocess.getstatusoutput()类来调起其他命令(即创建子进程),
其具备优质的子进程管理(创建,销毁,进行标准输入,进行标准输出,进行错误输出等)特性。
为什么说他是一个类,而不是一个函数,我们在学习python过程中一定要学会阅读第三方库,请看源码截图:
我们在学习python过程中一定要学会阅读第三方库
四 . 调试
我们运行adb_devices.py文件得到如下结果:
在这里插入图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载testing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值