robotframework+appium进行app自动化,自动亮屏安卓手机方法

本文介绍了一种使用RobotFramework结合Appium进行APP自动化测试的方法,并实现了定时执行测试用例的功能,确保了手机在测试过程中始终保持亮屏状态。通过自定义ADB命令,无论手机屏幕当前状态如何,均可实现屏幕唤醒。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

robotframework+appium进行app自动化时,为了做到定时可以执行用例,保证手机可以一直在亮屏状态,写了如下方法以资源方式导入项目,直接使用adb_screenOn()方法,不论屏幕是否亮屏,都可以正常执行用例


# -*- coding:utf-8 -*-

import os

class Adb(object):

    def __init__(self):
        pass
		

    def adb_uninstall_package(self, package_name):
	
        """
           # 卸载手机内指定包名的app

        """
        try:
            cmd = 'adb uninstall {}'.format( package_name)
            print cmd
            text = os.popen(cmd)
            content = text.read()
            print content
            if 'Success' in content:
                print 'Pass: 卸载手机app成功'.decode('UTF-8').encode('GBK')
            else:
                print 'Fail: 卸载手机app失败 '.decode('UTF-8').encode('GBK')
        except Exception as e:
            print str(e)
						

	
	
    def __adb_rouse_phone(self):

        """
          #亮屏手机
        """
        try:
            cmd = 'adb shell input keyevent 26'
            print cmd
            text = os.popen(cmd)
            content = text.read()
            print  content+'手机屏幕亮屏成功'.decode('UTF-8').encode('GBK')
        except Exception as e:
            print str(e)

    def adb_screenOn(self):

        """
          #先查看手机是否亮屏,如果没有使之亮屏

        """
        a = Adb()
        try:
            cmd = 'adb shell dumpsys window policy^|grep mScreenOnFully'
            print cmd
            text = os.popen(cmd)
            content = text.read()
            print content
            if 'mScreenOnEarly=true mScreenOnFully=true' in content:
                print 'Pass: 手机屏幕已经是亮屏'.decode('UTF-8').encode('GBK')
            else:
                 a.__adb_rouse_phone()
        except Exception as e:
            print str(e)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值