1、配置SDK环境发现adb无法生效:

解决方案:

  这个问题一般就是你的环境变量没有配置好,很多同学比较容易出现的点就是win10系统的环境变量配置:

一定要注意打开path添加:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;这个配置的时候一定要先点击新建再分别在两行创建(win7系统是直接粘贴到path变量值后面即可),并且分号不需要!!!

2、通过adb命令获取前台包名和类名出现下面错误:

解决方案:

  在windows环境变量中检查path中是否有%SystemRoot%\system32;%SystemRoot%这个配置,如不存在,添加进行保存即可。

注意:在android 7.0以下可以用此命令进行查询,但是在android 8.0上dumpsys activity的信息已经有变化,不能使用mFocusedActivity

需要使用:

  adb shell dumpsys activity | find "mResumedActivity"

3、appium inspector工具开启session出来下面提示:

Error: Activity used to start app doesn't exist or cannot be launched! Make usre it exists and is launchable activity

解决方案:

  这种问题一般就是你的appActivity写错,需要确认你对应测试入口Activity是否正确:通过aapt dump badging apk路径得到lunchable-activity对应的类名

4、androidDriver.startActivity方法不存在

解决方案:

  将Java Compiler改成1.8,因为startActivity方法在接口中定义成default,这是JDK1.8+的新特性。

5、Hybrid混合应用切换appium中提示:

[MJSONWP] Encountered internal error running command: Error: Could not find package com.android.chrome on the device

解决方案:

  Could not find package com.android.chrome on the device测试手机/模拟器中没有安装chrome浏览器,去应用市场下载安装一个即可。

6、微信小程序自动化appium提示:

Error: Failed to start Chromedriver session:
An unknown server-side error occurred while processing the command.
(Original error: unknown error: known package com.android.chrome does not accept activity/process

解决方案:

  java-client的版本切换到5.0.3,自测java-client 5.0.4及以上的版本会报此错误信息,Appium官方确认是selenium的BUG,所以小伙伴们测试微信小程序的时候最好使用5.0.3或者以下的版本。

7、Hybrid混合应用自动化脚本运行出来下面提示:

[Chromedriver] error: No Chromedriver found that can automate Chrome '39.0.0'

解决方案:

  1、确定在手机端有安装chrome浏览器

  2、chromedriver的版本和webview版本需要对应上

参考链接:https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/web/chromedriver.md

8、DesiredCapability属性deviceName无效问题:

  在代码中通过deviceName指定运行的设备会发现无效,Appium有做了说明

deviceName属性在代码中配置了是无效的,但是Appium初始化的时候必须要有,否则会报错,很坑有木有。

9、指定automationName为UIAutomator2,如果有涉及到多设备并发执行,那么每个AppiumServer中UIAutomator2对应的端口都需要配置:

默认UIAutomator2端口为8200,可以自己在代码中指定

desiredCapabilities.setCapability("systemPort", 8202);

app自动化问题点整理的更多相关文章

  1. App 自动化框架设计思路

    最近在整理和学习Appium+Java 自动化框架,对APP自动化框架的部分设想参考了一些文章,先进行整理下: 框架的思路一: 思考引入:https://www.cnblogs.com/yunfeio ...

  2. APP自动化框架LazyAndroid使用手册(2)--元素自动抓取

    作者:黄书力 概述 前面的一篇博文简要介绍了安卓自动化测试框架LazyAndroid的组成结构和基本功能,本文将详细描述此框架中元素自动抓取工具lazy-uiautomaterviewer的使用方法. ...

  3. APP自动化框架LazyAndroid使用手册(1)--框架简介

    作者:cryanimal  QQ:164166060 APP自动化简介 APP自动化,即通过自动化的方式,对APP施行一系列的仿按键输入.触摸屏输入.手势输入等操作,以达到对APP的功能进行自动化测试 ...

  4. 用java和junit编写app自动化测试用例

    package myTest; import static org.junit.Assert.*; import io.appium.java_client.android.AndroidDriver ...

  5. 用python和unittest编写app自动化测试用例

    import unittest import webdriver import time class Test(unittest.TestCase): @classmethod def setUpCl ...

  6. App自动化测试-1.App自动化介绍和环境搭建

    App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...

  7. APP自动化针对PO模式进行二次封装之basepage

    APP自动化跟WEB自动化所使用的框架基本一样,都是采用的PO模式结合pytest框架编写自动化测试脚本,为了提高代码的复用性.稳定性和易维护性,我们针对PO模式进行了二次封装,将日志,等待以及异常截 ...

  8. APP自动化环境配置

    做自动化很多人都不喜欢做app自动化,说实话,我也不喜欢做app自动化,但是没办法,老板给你钱,让你做,不得不做! 其实app自动化的难点就在于环境,环境OK了之后一切都和web自动化差不多,顶多就是 ...

  9. 手机APP自动化环境搭建

    1 摘要 近年来,随着移动应用从数量上和逻辑复杂程度上的增长,以及产品发布周期的紧缩,使得回归测试迫在眉睫,鉴于此APP自动化测试变得越来流行,当前主流的APP自动化工具有:Appium.Roboti ...

随机推荐

  1. Redis数据类型Set

    Redis的SET是无序的String集合,它里面的元素是不会重复的. SADD,SMEMBERS SADD命令会添加新元素到SET,可以看到一次性可以添加一个或多个元素.SMEMBERS可以获取se ...

  2. php框架rbac功能分析

    四大php框架rbac功能分析对比

  3. Docker使用Dockerfile构建Asp.Net Core镜像

    FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base WORKDIR /app EXPOSE 80 FROM microsoft/dotnet:2. ...

  4. Linux磁盘管理及LVM讲解

    硬盘接口 硬盘接口分为IDE.SATA.SCSI和SAS四种, IDE接口硬盘多用于家用产品中,也部分应用于服务器.不支持热添加,比较老. SCSI接口的硬盘则主要应用于服务器市场.linux. 而S ...

  5. spark ML pipeline 学习

    一.pipeline 一个典型的机器学习过程从数据收集开始,要经历多个步骤,才能得到需要的输出.这非常类似于流水线式工作,即通常会包含源数据ETL(抽取.转化.加载),数据预处理,指标提取,模型训练与 ...

  6. Django--post提交表单内容

    本节目标:①.提交表单内容②.通过客户端提交表单新增一篇文章③.通过Django的forms组件来完成新增一篇文章 =======提交表单内容======== 1.前端html:login.html ...

  7. 关于Selenium3+python3.6自动化测试中iframe切换

    本篇内容主要表述以下几个问题: 1.iframe 这个是什么? 2.定位iframe 标签时遇到的几个报错总结. 3.显示等待与隐示等待的原理与优缺点. 4.无name,ID可变情况下的处理方式 5. ...

  8. Flask消息验证与提示

    一,消息提示基本语法. 1,先新建一个Flask工作空间. 2,新建后自动得到一个app.py文件,直接运行可以看到基本效果.然后引入 from flask import flash.使用这个flas ...

  9. centos 桥接配置 设置网络代理 lnmp搭建

    一.桥接配置 centos设置  编辑->虚拟网络编辑器->桥接模式->还原默认设置 虚拟机->设置->网络适配器->桥接 cd /etc/sysconfig/ne ...

  10. jQuery(三)

    jquery链式调用 jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以连起来写: $('#div1') // id为div1的元素 .children('ul ...