• 记录两个使用OPPO手机做自动化测试遇到的问题


    问题1,运行的时候报错:

    Message: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error:
    'Command 'D:\android-sdk-windows\platform-tools\adb.exe -P 5037 -s b3b50f25 shell ime enable io.appium.settings/.UnicodeIME' exited with code 137'; Stderr: ''; C
    ode: '137'

    解决办法:

    注释掉连接手机中的这两项:
    'unicodeKeyboard': True,
    'resetKeyBoard': True

    问题2:

    ERROR root:base_driver.py:61>> Message: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command 'D:\android-sdk-windows\platform-tools\adb.exe -P 5037 -s b3b50f25 shell pm install -r /data/local/tmp/appium_cache/0cc1725a60a05dbb5d0d09256f2fc6ece7e3b10f.apk' exited with code 1'; Stderr: 'Failure [-99]'; Code: '1'

    这个问题应该是adb安装appium服务的时候报错了,重新卸载安装就可以:


    # 卸载APP,后面的路径是报错的提示中的路径
    adb uninstall /data/local/tmp/appium_cache/0cc1725a60a05dbb5d0d09256f2fc6ece7e3b10f.apk

    然后重新安装,把错报的那句指令执行一下,提示成功即可,要注意OPPO手机安装的时候可能提示输入密码,手动输入一下:

    adb -P 5037 -s b3b50f25 shell pm install -r /data/local/tmp/appium_cache/0cc1725a60a05dbb5d0d09256f2fc6ece7e3b10f.apk

    问题3:

    还有一个问题始终没有解决掉,也是OPPO手机,find toast的时候总是找不到提示信息,使用华为手机就好好的,换OPPO就总找不到,toast显示的时间挺长的,肯定不是一闪而过不容易获取到的那种,如果有人能解决,就感激不尽了。

    下面是我的find_toast()方法:

        def find_toast(self, message, screen_name="", is_screenshot=True, timeout=10.0, time=0.5):
            """
            获取toast的内容并返回
            :param message: 预期要获取到的toast部分提示信息
            :param screen_name:保存截图的名字
            :param is_screenshot:是否截图
            :param timeout:WebDriverWait寻找toast的超时时间
            :param time:每隔多长时间寻找toast一次
            :return: 返回找到的toast提示信息
            """
            message = "text," + message
            try:
                element = self.find_element((By.XPATH, message), timeout, time)
                if is_screenshot:
                    self.screenshot(screen_name)
            except Exception:
                logger.error("没有找到这句提示信息:%s" % message[5:])
                return False
            return element.text
  • 相关阅读:
    Java基础系列1:Java基本类型与封装类型
    深入理解设计模式六大原则
    分布式系统ID生成方案汇总
    微服务入门
    Web攻击技术
    Jedis与Redisson选型对比
    Hystrix分布式系统限流、降级、熔断框架(二)
    可重入锁ReentrantLock实现原理
    Hystrix分布式系统限流、降级、熔断框架(一)
    Redis过期策略、持久化、集群与常见缓存问题
  • 原文地址:https://www.cnblogs.com/sy_test/p/13024786.html
Copyright © 2020-2023  润新知