APP测试面试题快问快答(二)

news2025/1/13 15:50:53

1.请问App测试的主要内容包含?

功能测试:

业务逻辑正确性测试:依据产品文档->测试用例编写。

界面的测试

界面测试:依据产品UI设计文档(高保真图,原型图)。

升级,安装,卸载测试:

  1. 升级测试:临近版本升级(1.0->1.1);跨版本(1.0->....->2.2)
  2. 安装测试:首次安装;覆盖安装(同版本,不同版本覆盖);卸载后安装。
  3. 卸载测试:首次卸载;卸载安装后再卸载。

兼容性测试:

  1. 系统版本:Android:官方版本,定制版本;IOS:官方提供版本。
  2. 手机品牌和型号:华为,vivo,小米等。
  3. 分辨率:720 * 1280 1080* 1920。
  4. 网络情况:2g 3g 4g 5g Wi-Fi。
  5. 自身软件的兼容性
  6. 与其他常用软件的兼容性

异常测试:

  1. 热启动应用:应用在后台长时间待机;应用在后台待机过程中,手机重启。
  2. 网络切换和中断恢复。
  3. 电话信息中断恢复。

性能测试

  1. 安装和启动时间
  2. CPU的占用
  3. 内存的占用
  4. 流量的耗用
  5. 电量的耗用
  6. FPS
  7. 后端, 测试App中的各类操作是否满足用户响应时间要求,主要是测试点在网速方面,2g,3g,wifi, 4g一定要覆盖到
  8. 后端 有网络并发

安全性测试

  1. 对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测,以期发现潜在的安全问题;
  2. 从数据的本地存储到数据的传输、处理以及远程访问等各个环节,基于相应的安全标准/行业标准评估App的安全特性;
  3. 检测App的用户授权级别,数据泄漏,非法授权访问等;
  4. 借鉴在Web App和网络安全测试的一些成功经验在智能终端App测试中进行裁减或适配;
  5. 基于各种通信协议或相应的行业安全标准检视App是否满足相应的要求。

健壮性测试:

  1. 在各种边界压力情况下(如电池、存储、网速等),验证App是否能正确响应
  2. 反复/长期操作下,系统资源是否占用异常;Android 可是使用adb命令
  3. 压力测试主要集中在后端,前端的压力测试目前测的较少

2.App闪退的原因有哪些?

考察点:移动app测试的过程中是否遇到闪退情况

原因有很多,举例:

1.缓存垃圾太多,Android系统的特性,如果长时间不清理垃圾文件,会导致越来越卡,甚至闪退。

2.运行程序太多,导致内存不足。

3.应用版本兼容问题,分辨率兼容问题。

4.APP的SDK与手机系统不兼容。

5.系统升级后,新版本不兼容老版本的API,返回对象失败,报空指针。

6.软件权限未开放。

3.App测试的实时日志如何获取?

考察点:是否有移动app测试的日志获取相关经验

一般可以通过以下方式获取:

1.可以使用adb命令:adb logcat | find "com.sankuai.meituan" >d:\test.txt

2.用ddms抓取,手机连上电脑,打开ddms工具;

3.在Android Studio开发工具中获取,打开ddms工具;

4.用monitor工具获取,手机连上电脑,打开monitor工具

4.常用的adb命令有哪些?

考察点:是否有移动app测试的相关命令的操作经验

获取设备列表及设备状态:adb devices,adb-getstat,adb get-serialno

安装应用:

adb install 路径\xx.apk, 安装应用;

adb install -r 重新安装

adb shell pm install 安装

adb shell pm install -r

3. 卸载应用:adb uninstall <包名>, adb shell pm uninstall <包名>,后面的参数是应用的包名,区别于 apk 文件名adb uninstall

将 Android 设备上的文件或者文件夹下载到电脑本地:adb pull <远程路径> <本地路径>adb pull复制 Sdcard 下的 pull.txt 文件到 D 盘:adb pull sdcard/pull.txt d:\rename.txt

上传本地文件至 Android 设备:adb push <本地路径> <远程路径>

eg: adb push推送 D 盘下的 ITester.txt 至 Sdcard:adb push d:\ITester.txt sdcard/ (注意sdcard 后面的斜杠不能少)

6. 结束和启动adb服务:adb kill-server /adb start-server , 结束 adb 服务/启动 adb 服务,

通常两个命令一起用,设备状态异常时使用 kill-server,运行 start-server 进行重启服务。adb kill-server adb start-server

打印及清除系统日志:adb logcat打印 Android 的系统日志adb logcat -c

5.讲一下安卓 SDK中自带工具的功能

考察点:是否熟悉Android SDK工具及使用实际相关经验

ddms:Dalvik Debug Monitor Service,是 Android 开发环境中的Dalvik[虚拟机]调试监控服务。

monkey:Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。

uiautomator:是Eclipse自带的用于UI自动化测试工具,可仿真APP上的单击、滑动、输入文本等操作。

monitor:同uiautomator,包含ddms工具的相关功能

adb:ADB的全称为Android Debug Bridge,是一种debug工具。

monkeyrunner: monkeyrunner是一个Android自动化测试工具。它提供一个API,运用该API编写的程序可以不用通过Android代码来直接控制Android设备和模拟器,我们可以写一个Python程序对android应用程序或测试包进行安装,运行,发送模拟击键,对用户界面进行截图并将截图存储在workstation上等操作。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/589916.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

研发工程师玩转Kubernetes——定时任务

定时任务是指可以制定周期的任务&#xff0c;比如每周二0点1分执行一次。在《研发工程师玩转Kubernetes——非定时任务》中&#xff0c;我们介绍了单次执行的任务。现在我们只要对其清单稍作修改&#xff0c;就可以实现定时任务。 # wrk_cronjob.yaml apiVersion: batch/v1 ki…

【论文阅读】SeaD: End-to-end Text-to-SQL Generation with Schema-aware Denoising

【论文阅读】SeaD: End-to-end Text-to-SQL Generation with Schema-aware Denoising 文章目录 【论文阅读】SeaD: End-to-end Text-to-SQL Generation with Schema-aware Denoising1. 来源2. 介绍3. 模型3.0 问题定义3.1 采样公式3.2 带指针的 Transformer3.3 模式感知去噪&am…

低代码平台或零代码平台靠谱吗?15 年的老程序员来给大家剖析一下

提到低代码平台或者零代码平台靠谱吗&#xff1f;咱们首先得先认识一下低代码和零代码平台。 一、什么是低代码开发平台呢&#xff1f; 低代码的含义是少写代码并不是不写代码&#xff0c;面向的用户群体还是编程人员&#xff0c;传统的快速开发平台、在线开发平台、OA办公系统…

Python中Pandas库中的DataFrame数据结构创建举例

Python中Pandas库的DataFrame数据结构创建举例 DataFrame的数据结构是Python数据分析中重要应用数据类型。本文将重点介绍DataFrame的创建。 1.DataFrame的创建 创建DataFrame的方法使用pandas.DataFrame&#xff0c;向该方法传入字典即可创建DataFrame。 传入的字典的key对应E…

【HAL库】STM32F407----CAN通信----过滤器配置

【HAL库】STM32F407----CAN通信----基本原理 【HAL库】STM32F407----CAN通信----电路图 【HAL库】STM32F407----CAN通信----中断详解 【HAL库】STM32CubeMX开发----STM32F407----CAN通信实验 一、STM32F407----CAN过滤器----简介 在CAN协议里&#xff0c;报文的标识符不代表节…

纯vue 获取usb串口,实现电子秤的对接

说明&#xff1a;解决生产上过秤重量手动输入出错问题 效果图&#xff1a; 一&#xff1a;代码部分 1、创建一个名字为seriaport.js文件&#xff08;随便定义&#xff0c;为下面页面引入使用&#xff09; export default class MySerialPort {constructor() {this.state {po…

超级干货!前端入门先学什么?前端自学路线分享!

各位同学&#xff0c;下午好~之前给大家分享了前端岗位的面试题&#xff0c;小源能看的出来&#xff0c;还是有不少同学想入行前端的&#xff01;那除了会面试&#xff0c;还要有充足丰富的知识储备&#xff0c;这样才能拿下工作&#xff01; 好程序员今天就给大家整理了一份前…

C++进阶 —— set

目录 一&#xff0c;set介绍 二&#xff0c;set使用 一&#xff0c;set介绍 set是按照特定次序存储元素的关联式容器&#xff0c;元素不可重复&#xff1b;set中的元素不能在容器中修改(元素总是const)&#xff0c;但是可从容器中插入和删除它们&#xff1b;set中的元素总是按…

【Linux】进程间通信详解

环境&#xff1a;centos7.6&#xff0c;腾讯云服务器Linux文章都放在了专栏&#xff1a;【Linux】欢迎支持订阅 进程间通信介绍 什么是进程间通信&#xff1f; 进程间通信&#xff08;Interprocess communication&#xff0c;简称IPC&#xff09;就是让程序员能够协调不同的进…

【Apache 网页优化】

文章目录 一、Apahce 网页优化1、网页压缩2、网页缓存 二、Apachen的安全优化1、隐藏版本信息2、Apache 防盗链 一、Apahce 网页优化 1、网页压缩 1.检查是否安装 mod_deflate 模块 apachectl -t -D DUMP_MODULES | grep "deflate"2.如果没有安装mod_deflate 模块…

Java基础 流程控制语句

顺序结构 顺序结构就是程序从上到下逐行地执行。表达式语句都是顺序执行的。并且上一 行对某个变量的修改对下一行会产生影响。 public class StatementTest{public static void main(String[] args){int x 1;int y 2; System.out.println("x " x);System.out.p…

非科班自学一年心得,学弟学妹别瞎学了

大家好&#xff0c;我是帅地。 前两天我发了一篇亲学弟自学一年拿大厂 offer 的文章&#xff1a;非科班&#xff0c;帅地亲学弟自学一年拿到大厂offer了 不过那一篇只写了自己转行开发岗的心里变化&#xff0c; 这两天学弟又在知识星球发了一篇关于找工作的万字长文 说实话&…

ISO21434 项目网络安全管理

目录 一、概述 二、目标 三、输入 3.1 先决条件 3.2 进一步支持信息 四、要求和建议 4.1 网络安全责任 4.2 网络安全规划 4.3 裁剪 4.4 重用 4.5 非上下文组件 4.6 现成组件 4.7 网络安全案例&#xff08;Cybersecurity case&#xff09; 4.8 网络安全评估&#…

【惊叹】AI进步的速度太快,我们赶不上了?

文章目录 前言一、LoRA二、QLoRA1、环境准备2、推理就是直接 跑shscripts/generate.sh。3、前面的环境和数据都没问题了&#xff0c;运行scripts/generate.sh。 总结 前言 AI 领域的技术&#xff0c;真是隔一段时间就有一个新突破&#xff01; 全民都能训练大模型的时代&…

TypeScript算法题实战——剑指 Offer篇(3)

随着TypeScript的流行&#xff0c;越来越多的开发者开始使用TypeScript来解决算法问题。 在本文中&#xff0c;我们将使用TypeScript来解决剑指offer的算法题。这些问题涵盖了各种各样的主题&#xff0c;包括数组、字符串、链表、树、排序和搜索等。我们将使用TypeScript的强类…

【MySQL高级篇笔记 (中-索引的数据结构) 】

此笔记为尚硅谷MySQL高级篇部分内容 目录 一、索引及其优缺点 1、索引概述 2、优点 3、缺点 二、InnoDB中索引的推演 1、设计索引 1.一个简单的索引设计方案 2.InnoDB中的索引方案 2、常见索引概念 1. 聚簇索引 2. 二级索引&#xff08;辅助索引、非聚簇索引&#…

Node.js详解(一):基础知识

文章目录 一、Node.js介绍二、Node.js的优势三、Node.js的特点1、V8虚拟机2、事件驱动3、异步、非堵塞I/O 四、NodeJS带来的对系统瓶颈的解决方案1. 并发连接2. I/O阻塞 五、NodeJS的优缺点1、优点&#xff1a;2、缺点&#xff1a; 六、适合NodeJS的场景1、RESTful API2、统一W…

VMware、Ubuntu安装以及虚拟机复制粘贴问题

安装VMware 下载阿里云链接&#xff08;16 pro&#xff09;&#xff1a;VMware https://www.aliyundrive.com/s/ot9dhPNdSwC 安装&#xff1a;选一下安装地址&#xff0c;一直下一步即可。&#xff08;可能会要求重启电脑&#xff0c;重启即可&#xff09; 然后点击“许可证”…

Java 高级应用-多线程-(四)FutureTask的介绍及使用

Java多线程之FutureTask的介绍及使用 FutureTask属于java.util.concurrent 包&#xff1b;FutureTask表示可取消的异步计算。FutureTask类提供了一个Future的基本实现 &#xff0c;具有启动和取消计算的方法&#xff0c;查询计算是否完整&#xff0c;并检索计算结果。结果只能…

Camtasia2023试用版新功能介绍

Camtasia 2023在易用性更进一步&#xff0c;再一次降低了制作精美视频的门槛&#xff0c;下面看一看&#xff0c;Camtasia 2023有哪些的新功能&#xff01;包括影像、音效、鼠标移动轨迹、解说声音等等内容的录制&#xff0c;并且软件还可以提供即时播放和编辑压缩的功能&#…