app测试知识点,adb命令,日志(安卓和苹果)查看,软件后缀,专项测试等

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: app测试知识点,adb命令,日志(安卓和苹果)查看,软件后缀,专项测试等

软件后缀名

安卓软件后缀 APK

苹果软件后缀 IPA


常用adb命令


安装卸载

adb install 用于安装

adb uninstall 用于卸载


文件推送

adb push 命令将PC机上的文件推到手机上;

adb pull 命令将手机上的文件拉到PC机上;


shell操作模式

adb shell

通过adb shell 命令,就可以进入设备或者模拟器的shell环境了,在这个Linux shell中,我们就可以执行各种Linux命令了。

如果只想执行一条shell命令,就可以采用:adb shell [shell_command],在实际使用中,经常与grep或findstr一起使用,起到过滤作用,查看自己需要的关键信息。


常见命令:

如 ls, cd, rm, mkdir, touch, pwd, cp, mv, ifconfig, netstat, ping, ps, top等,进入adb shell即可执行,与linux相似


adb logcat 查看日志详解:

"-s"选项 : 设置输出日志的标签, 只显示该标签的日志;

"-f"选项 : 将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功;

"-r"选项 : 按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功;

"-n"选项 : 设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样;

"-v"选项 : 设置日志的输出格式, 注意只能设置一项;

"-c"选项 : 清空所有的日志缓存信息;

"-d"选项 : 将缓存的日志输出到屏幕上, 并且不会阻塞;

"-t"选项 : 输出最近的几行日志, 输出完退出, 不阻塞;

"-g"选项 : 查看日志缓冲区信息;

"-b"选项 : 加载一个日志缓冲区, 默认是 main, 下面详解;

"-B"选项 : 以二进制形式输出日志;

** Log 优先级是下面的字符,顺序是从低到高 **:


V — 明细 (最低优先级)

D — 调试

I — 信息

W — 警告

E — 错误

F — 严重错误

S — 无记载 (最高优先级,没有什么会被记载)


需要打印级别为Error的信息

adb logcat *:E


需要打印日志详细时间的简单数据

adb logcat -v time


安卓查看日志

1.连接手机


2.使用adb logcat查看

https://www.jianshu.com/p/6bbd3f370fe9![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20210409110848888.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2FhYWFhYWFhYW5qamo=,size_16,color_FFFFFF,t_70


ios查找日志

1.打开设置


2.点击分析与改进


3.分析数据


4.找对应的日志


app专项测试点

兼容性测试/适配测试

一般做系统版本兼容性测试、手机机型兼容性测试与分辨率适配测试,可根据具体的业务线要求进行

1.平台兼容性测试(手机和平板等)

根据客户端是否需要支持pad来决定是否测试

2.手机机型兼容性测试(监控使用公司业务的用户手机占有率前十的型号)

3.系统分辨率兼容性测试

测试手机不同分辨率下,app各个页面展示情况,主要考虑市场占有主流分辨率(如:10801920、7201280等),低分辨率(如:320480、480800、540*960等),高分屏(如:2K屏、4k屏等);

同时也包含iOS&Android系统不同操作场景下的页面展示,如:横竖屏显示,ios最新出的暗黑模式


弱网测试

采用charles工具,关注点:卡死 崩溃 无响应 闪退 业务交互数据的正确性


安装卸载

安装测试、卸载测试

安装/卸载:升级安装

1.正常安装/卸载:升级安装/卸载。安装测试中需检查安装前后有安装包的大小(针对app),安装时可以正常启动,卸载时查看是否将已经下载文件包彻底删除。

2.异常安装/卸载:如安装空间不足,重复安装,卸载正在使用的软件,安装关机,安装/卸载断电,卸载是否干净等。在上述情况下异常安装卸载是否有友好提示,安装完成是否不能正常启动,删除是否不彻底,有遗留安装文件。


启动时间测试

启动时间对于App的性能测试,启动时间是个重要指标,启动时间分为两种情况,一种是冷启动时间(通常是系统重启,即在启动前没有该App进程的情况),另一种是热启动,即App从被切换到前台(点back退出后再点击图标启动,手机系统中有该APP进程)。QA测试时,一般关注冷启动的启动时间。


冷启动的流程即为App启动流程的全过程, 需要创建App进程, 加载相关资源, 启动Main Thread, 初始化首屏Activity等。


耗电量测试

电量的测试需要测试的场景比较多,在不同使用场景下消耗的电量肯定是不同的。测试场景包括

1.待机

2.活动转态,不断地进行某些场景的操作

3.静默转态,让APP处于后台运行


事件交叉测试

交叉事件主要测试点:针对智能终端应用的服务等级划分方式及实时特性所提出的测试方法。交叉测试又叫事件或冲突测试,是指一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰的测试。如;App在前/后台运行状态时与来电、文件下载、音乐收听等关键运用的交互情况测试等。交叉事件测试非常重要,能发现很多应用中潜在的性能问题。

多个APP同时运行是否影响正常功能

APP运行时前/后台切换是否影响正常功能

APP运行时拨打/接听电话

APP运行时发送/接收信息

APP运行时发送/收取邮件

APP运行时切换网络(2G、3G、4G 、 5G 、 Wi-Fi)

APP运行时浏览网络

APP运行时使用蓝牙传送/接收数据

APP运行时使用相机、计算器等手机自带设备


权限测试

获取手机的权限是否起了作用,在未授权的时候是否能强行使用改权限

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
21天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
64 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
2月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
68 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
3月前
|
Java 测试技术 Android开发
Android性能测试——发现和定位内存泄露和卡顿
本文详细介绍了Android应用性能测试中的内存泄漏与卡顿问题及其解决方案。首先,文章描述了使用MAT工具定位内存泄漏的具体步骤,并通过实例展示了如何分析Histogram图表和Dominator Tree。接着,针对卡顿问题,文章探讨了其产生原因,并提供了多种测试方法,包括GPU呈现模式分析、FPS Meter软件测试、绘制圆点计数法及Android Studio自带的GPU监控功能。最后,文章给出了排查卡顿问题的四个方向,帮助开发者优化应用性能。
184 4
Android性能测试——发现和定位内存泄露和卡顿
|
3月前
|
人工智能 测试技术 Python
基于 LangChain 的自动化测试用例的生成与执行
本章节详细介绍了如何利用人工智能技术自动化完成Web、App及接口测试用例的生成与执行过程,避免了手动粘贴和调整测试用例的繁琐操作。通过封装工具包与Agent,不仅提升了测试效率,还实现了从生成到执行的一体化流程。应用价值在于显著节省时间并提高测试自动化水平。
|
3月前
|
测试技术
基于LangChain手工测试用例转App自动化测试生成工具
在传统App自动化测试中,测试工程师需手动将功能测试用例转化为自动化用例。市面上多数产品通过录制操作生成测试用例,但可维护性差。本文探讨了利用大模型直接生成自动化测试用例的可能性,介绍了如何使用LangChain将功能测试用例转换为App自动化测试用例,大幅节省人力与资源。通过封装App底层工具并与大模型结合,记录执行步骤并生成自动化测试代码,最终实现高效自动化的测试流程。
|
3月前
|
测试技术 Shell Android开发
Android 性能测试初探 (六)
本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试,但本系列文章都不去一一探讨了。
56 6
|
3月前
|
JavaScript 测试技术 Android开发
Android 性能测试初探 (四)
本文介绍了GPU在移动端性能测试中的重要性,并详细解释了过度绘制、帧率和帧方差的概念。针对GPU测试,文章列举了三项主要测试内容:界面过度绘制、屏幕滑动帧速率和平滑度。其中,过度绘制测试需遵循特定标准,而帧速率和平滑度测试则可通过软件或硬件方法实现。在软件测试中,使用Systrace插件和高速相机是两种常用手段。对于不同机型,帧率及帧方差的测试标准也需相应调整。
56 5
|
3月前
|
测试技术 Shell Android开发
Android 性能测试初探 (三)
本文承接《Android性能测试初探(二)》,深入探讨CPU与内存测试。介绍了移动端内存测试的重要性及其测试目标,并详细列举了不同状态下应用内存消耗情况的测试项目。此外,还提供了多种内存测试方法,包括使用`procrank`等工具的具体操作步骤。最后,文章也简要提及了CPU测试的相关内容,帮助读者更好地理解Android性能测试的关键要素。
54 5
|
3月前
|
测试技术 Shell 定位技术
Android 性能测试初探 (五)
聊聊大家不常关注的测试项- 功耗
55 3
|
3月前
|
算法 测试技术 Android开发
Android 性能测试初探 (二)
上回大体介绍了下在 android 端的性能测试项,现在我们就细节测试项做一些阐述(包括如何自己 DIY 测试)
48 4