App 测试通常会用到的工具

  1. adb :Android 的控制工具,用于获取Android的各种数据和控制
  2. Appium Desktop:内嵌了Appium Server和Inspector的综合工具
  3. appium Server:Appium的核心工具,命令行工具
  4. Appium Client:各种语言的客户端封装库,用于链接appium server
  5. AppCrawler 自动遍历工具

appium 常用配置

capability

  • App Apk 地址
  • appPackage包名
  • appActivity Activity名字
  • automationName 默认使用uiautomator
  • noReset fullReset 是否在测试前后重置相关环境
  • autoGrantPermissions 自动赋予App权限
  • uicodeKeyBoard resetKeyBoard是否需要输入非英文之外的语言并在测试完成后重置输入法

定位

  1. id
  2. Accessibility ID
  3. XPath
  4. Toast 识别
@Override
public synchronized void onAccessibilityEvent(AccessibilityEvent event){
Logger.debug("Catch toast messsage" +event);
if(text !=null && !text.isempty()){
setToastMessage(text);
}
if(originalistener!=null){
originalistener.onAccessibilityEvent(event);
}
}

交互

  1. click
  2. sendkeys
  3. swipe
  4. touch action

断言

元素是否存在:find_elements

元素属性正确性:get_attribute

xUnit常用断言类型

  • 传统xUnit 风格的assert()系列
  • Hamcrest 断言:基于更灵活的Matchers断言方式

参数化

  • 参数化:根据传入的数据,对测试用例进行迭代调用
  • 数据驱动:基于数据完成流程调度,通常数据来源自外部数据文件
  • 参数化是数据驱动的基础和特例

    数据驱动
  • 参数化数据读取自外部文件:使用YAML, JSON读取
  • 测试步骤读取自外部文件:定制执行引擎
  • 断言步骤读取自外部文件:定制执行引擎

appium简单使用的更多相关文章

  1. android-sdk-window的环境搭建以及appium简单录制脚本的使用

    大家好,今天给大家带来的是appium的环境搭建以及简单的录制脚本,自学的过程中入了不少坑,下面给大家开始分享! 使用Appium录制脚本必备三大金刚:Appium-desktop(至于为什么用这个, ...

  2. Appium简单测试用例

    工程目录如下: 封装初始化androiddriver 方法 import org.openqa.selenium.remote.DesiredCapabilities; import java.io. ...

  3. appium+python+eclipse简单编写小示例!

    Appium简单介绍! 一.appium分成3个部分来看,分别为:appium服务端.appium客户端.设备端 1.设备端 WebDriverAgentRunner 的应用,以后简称 WDA,这个应 ...

  4. Appium环境搭建Java篇

    1.下载.安装JDK&配置Java环境变量 JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html ...

  5. 篇5 python自动化测试应用-Selenium环境篇

    篇5                            python自动化测试应用-Selenium环境篇 --lamecho 1.1概要 大家好!我是lamecho(辣么丑),从本篇开始我将开始 ...

  6. uiautomator2 使用Python测试 Android应用

    GitHub地址:https://github.com/openatx/uiautomator2 介绍 uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库.其底 ...

  7. 手机APP自动化之uiautomator2 +python3 UI自动化

    题记: 之前一直用APPium直到用安卓9.0  发现uiautomatorviewer不支持安卓 9.0,点击截屏按钮 一直报错,百度很久解决方法都不可以,偶然间看见有人推荐:uiautomator ...

  8. Android自动化测试工具调研

    原文地址:Android自动化测试工具调研 - Stars-One的杂货小窝 Android测试按测试方式分类,可分为两种:一种是传统逻辑单元测试(Junit),另外一种则是UI交互页面测试. 这里详 ...

  9. Appium+python的一个简单完整的用例

    最近一直在忙,终于有时间来整理一下,传一个简单的用例,运行之后可以看到用例的报告,希望对大家有帮助. HTMLTestRunner这个包网上有很多,大家可以自己下载. 1 import unittes ...

随机推荐

  1. 【Electron】在 WSL2 中 打包 electron Linux 版本

    [Electron]在 WSL2 中 打包 electron Linux 版本. 安装 WSL 我使用的是 Ubuntu 20.04.4 LTS 的版本. 安装 WSL 文档地址:https://do ...

  2. 原来 Linux 日志文件系统是这样工作的~

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ 作者:Linux Performance 链接:http://linuxperf.com/?p ...

  3. 优化 Docker 镜像大小常见方法

    平时我们构建的 Docker 镜像通常比较大,占用大量的磁盘空间,随着容器的大规模部署,同样也会浪费宝贵的带宽资源.本文将介绍几种常用的方法来优化 Docker 镜像大小,这里我们使用 Docker ...

  4. SQL注入之information_schema

    在学习SQL注入时, 经常拿出来的例子就是PHP+MySQL这一套经典组合. 其中又经常提到的>=5.0版本的MySQL的内置库: information_schema 简单看一下informa ...

  5. 注解,lombok

    使用注解开发 UserMapper public interface UserMapper { @Select("select * from db4.user") List< ...

  6. 公司为什么要使用OKR,目的是什么?

    原创不易,求分享.求一键三连 站在公司角度,会有一些诉求: 想知道每个人在干什么,干得怎么样: 想知道如何把更多的人卷起来: 人是不想被管束的,无论是想"度量我"还是想卷我,都是我 ...

  7. HttpContext.TraceIdentifier那严谨的设计

    前言 Asp.Net Core中有一个不受人重视的属性HttpContext.TraceIdentifier,它在链路追踪中非常有用,下面是官方的定义: 在项目中一般会将该字段输出到每一条日志中,也可 ...

  8. 安装Redis到Linux(源码)

    运行环境 系统版本:Ubuntu 16.04.2 LTS 软件版本:redis-5.0.4 硬件要求:无 安装过程 1.配置系统参数 root@localhost:~# vim /etc/sysctl ...

  9. 20212115朱时鸿 《python程序设计》实验四报告

    课程:<Python程序设计>班级: 2121姓名: 朱时鸿学号:20212115实验教师:王志强实验日期:2022年5月28日必修/选修: 公选课 1.实验内容 Python综合应用:爬 ...

  10. Go微服务框架go-kratos实战03:使用 gorm 实现增删改查操作

    一.简介 在上一篇文章 go-kratos实战02 中,详细介绍了用 kratos 编写项目代码的步骤.这篇就在上篇基础上,再结合 Go 数据库操作库 gorm 一步一步来实现一个简单的增删改查操作. ...