前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Appium移动端自动化测试--基础预热

Appium移动端自动化测试--基础预热

作者头像
软测小生
发布2019-12-12 16:51:07
1.3K0
发布2019-12-12 16:51:07
举报
文章被收录于专栏:软测小生软测小生

近日开始了移动端自动化测试的学习之路,决定在学习的过程中进行笔记,总结学习,印象或许会深刻一些。

Android自动化环境准备

1、 Android SDK:- 下载 Android SDK(可以先使用Android Studio辅助安装),并设置 PATH 变量加入 SDK 的工具目录; 2、模拟器:

  • Android Studio 自带 Emulator [推荐]
  • Genymotion、网易 MuMu、BlueStacks

3、真机

需要安装的软件:

1、安装Android Studio(包含了SDK和Emulator) 2、安装Node.js和npm 3、安装Appium() 4、安装脚本IDE Pycharm

接下来大概的看一下与Appium相关的知识点。

Appium多端架构与自动化

在这里插入图片描述

Android自动化前提依赖:

在这里插入图片描述

获取App的信息:

获取App信息

  • 获取当前界面元素:adb shell dunpsys activity top
  • 获取任务列表:adb shell dumpsys activity activities

获取App入口

  • adb logcat | grep -i displayed
  • aapt dump baadging mobike.apk | grep lunchable-activity
  • apkanalyzer 最新版本的SDK中才有

启动应用

  • adb shell am start -w -n com.xueqiu.android/.view.WelcomeActivityAlias -S

Android常用命令

  • adb:Android Debug Bridge
  • adb devices:查看设备
  • adb kill-server:关闭 adb 的后台进程
  • adb tcpip:让 Android 脱离 USB 线的 TCP 连接方式
  • adb connect:连接开启了 TCP 连接方式的手机
  • adb logcat:Android 日志查看
  • adb bugreport:收集日志数据,用于后续的分析,比如耗电量

adb shell

adb shell 本身就是一个 Linux 的 shell,可以调用 Android 内置命令 adb shell:

  • adb shell dumpsys
  • adb shell pm
  • adb shell am
  • adb shell ps
  • adb shell monkey

常用命令列表:

adb: adb install (apk) pm:包管理工具,安装/卸载/清理包 adb shell pm clear com.xueqiu.android

am: 启动一个app adb shell am start -n com.xueqiu.android (adb shell am start -n com.xueqiu.android/.view.WelcomeActivityAlias -S) dumpsys: 获取app性能数据,以及更多详细的信息

uiautomator: 获取app整体的界面结构,也可以执行一些自动化测试 adb shell uiautomator dump adb shell “uiautomator dump && cat /文件名“ input: 完成一些简单的自动化指令 adb shell input 模拟一些触摸/键盘等操作事件 adb shell input tap 529 1176 #点击对应坐标的位置

Android性能统计dumpsys

  • 获取所有的 dumpsys 子命令 dumpsys | grep -i DUMP
  • 获取当前 activity adb shell dumpsys activity top
  • 获取 activities 的记录,可以获取到 appium 依赖的原始 activity dumpsys activity activities
  • 获取特定包基本信息 adb shell dumpsys package com.xueqiu.android
  • 获取系统通知 adb shell dumpsys notification
  • 获得内存信息 adb shell dumpsys meminfo com.android.settings
  • 获取 cpu 信息 adb shell dumpsys cpuinfo
  • 获取 gpu 绘制分析 adb shell dumpsys gfxinfo com.android.settings
  • 获取短信 adb shell dumpsys activity broadcasts | grep senderName=

uiautomator

  • adb shell uiautomator runtest
  • adb shell uiautomator dumpsys

简单的自动化工具input命令

  • text (Default: touchscreen)
  • keyevent [--longpress] … (Default: keyboard)
  • tap (Default: touchscreen)
  • swipe [duration(ms)] (Default: touchscreen)
  • draganddrop [duration(ms)] (Default: touchscreen)
  • press (Default: trackball)
  • roll (Default: trackbal

Appium生态工具

  • adb:Android 的控制工具,用于获取 Android 的各种数据和控制
  • Appium Desktop:内嵌了 Appium Server 和 Inspector 的综合工具
  • Appium Server:Appium 的核心工具,命令行工具
  • Appium Clients:各种语言的客户端封装库,用于连接 appium server: Java、Python、Ruby、robotframework-appium
  • AppCrawler 自动遍历工具

Appium desktop主要功能

  • UI 分析
  • 录制用例
  • 元素查找测试
  • Attach已有的session
  • 云测试

录制用例并执行

  • 使用 Appium Desktop 录制用例
  • 安装 Python 依赖 pip install Appium-Python-Client
  • 增加隐式等待增强稳定性
  • 重新运行
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软测小生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Android自动化环境准备
  • 需要安装的软件:
  • Appium多端架构与自动化
  • Android自动化前提依赖:
  • 获取App的信息:
  • Android常用命令
  • adb shell
  • 常用命令列表:
  • Android性能统计dumpsys
  • uiautomator
  • 简单的自动化工具input命令
  • Appium生态工具
  • Appium desktop主要功能
  • 录制用例并执行
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档