APP测试的测试内容有哪些,常见的Bug分类介绍!

news2024/9/21 4:21:41

对于产品的手机项目(应用软件),主要是进行系统测试。而针对手机应用软件APP的系统测试,我们通常从如下几个角度开展:功能模块测试、兼容性测试、安装和卸载测试、软件更新测试、性能测试、用户体验性测试、交叉事件测试、用户界面测试等。

常见的功能类缺陷

1、APP崩溃

这是测试中的常见问题,这类问题也是非常严重的,会直接影响用户对产品的第一印象,例如我们正在使用某个APP,正在使用突然应用就停止响应,界面上弹出“强制关闭错误”的窗口,需要强制关闭应用,或者正在使用时出现闪退的现象。这些情况都很影响用户的体验,导致用户卸载该APP。通用的触发移动APP崩溃的测试场景,如下:

1)验证在有不同的屏幕分辨率,操作系统和运营商的多个设备上的APP行为;

2)用新发布的操作系统版本验证APP的行为;

3)验证在如隧道,电梯等网络质量突然改变的环境中的APP行为;

4)通过手动网络从蜂窝更改到Wi-Fi,或反过来,验证APP行为;

5)验证在没有网络的环境中的APP行为;

6)验证来电/短信和设备特定的警报(如警报和通知)时的APP行为;

7)通过改变设备的方向,以不同的视图模式,验证APP行为;

8)验证设备内存不足时的APP行为;

9)通过用测试工具施加载荷验证APP行为;

10)用不同的支持语言验证APP行为。

11)功能未实现或只实现了部分

这类问题在测试过程中也经常出现,送测的版本有的只实现了部分功能,未实现产品需求说明书里的全部功能,例如账单明细查询,要求显示每笔交易账单的明细并且显示是否已入账,开发实现了每笔交易账单的明细,但是未实现显示该笔账单是否已入账。

2、功能实现错误

未按产品需求说明书中的功能实现,如按照产品需求说明书,白名单内的用户进行登陆时不受单点登陆的限制,也就是说同一个账号可以同时在A手机和B手机登录,但是开发实现错误,白名单内的用户在A手机登录后,在B手机登录,然后点击A手机上APP的功能,会弹出提示:该账号在B手机已登录,A手机强制退出登录。

3、功能测试要点

根据产品需求文档编写测试用例;软件设计文档编写用例;

测试要求:保证输入数据正确,并且进行了正确的操作,明确正确的输出结果和中间数据数值及格式。

兼容性测试要点及常见的兼容性缺陷

IOS 系统常见版本有7.0、8.1、8.4、9.1等,硬件常见 iPhone 4S、iPhone 5、iPhone 5S、iPhone 5C、iPhone 6、iPhone 6S、iPhone Plus、iPad 系列;安卓常见的版本有4.3、4.4、5.1、6.0,硬件更是数之不尽,不同的品牌,常见的如三星系列、华为系列、小米系列、OPPO 系列、VIVO系列等;

测试APP在不同的机型上由于软件、硬件等不同而出现各种各样的问题,这些都是缺陷聚集的地方,一个页面可能在安卓手机上显示正常,但可能在iPhone手机上显示错位,所以测试中尽量覆盖主流的手机型号和版本,如iPhone系列、三星系列、华为系列、小米系列、oppo系列、vivo系列等,找出在这些主流手机上使用app出现的缺陷并修复。

1、安装、卸载测试要点及常见缺陷

1、常见的安装、卸载类缺陷

1)安装过程中出现闪退;

2)安装完成后,点击APP无反应;

3)安装完成后,点击APP,APP出现闪退;

4)已经存在旧版本,但不卸载旧版本,进行覆盖安装新版本时,版本号是新版本的版本号,但APP的内容仍然是旧版本。 安装、卸载测试要点

安装测试很重要,用户使用APP的第一个动作就是安装APP,如果安装APP出现问题,会让用户直接弃用该APP。

2、测试中主要从以下方面进行测试:

5)应用是否可以在IOS不同系统版本或Android不同系统版本上安装(有的系统版本过低,应用不能适配);

6)软件安装后是否可以正常运行,安装后的文件夹及文件是否可以写到指定的目录里;

7)安装过程中是否可以取消,安装空间不足时是否有相应提示;

8)检查安装包是否齐全,尤其DLL, 检查安装手册;

9)如果应用需要通过网络验证之类的安装,需要测试一下断网情况下是否有相应提示;

10)是否可以删除应用(可通过桌面删除,也可以通过软件卸载安装。曾发现在IOS手机上有个应用安装时未完全安装,终止安装后,未完成安装的应用图标一直显示在手机上,并且无法成功删除);

11)测试卸载后文件是否全部删除所有的安装文件夹;

12)卸载过程中出现死机,断电,重启等意外的情况,待环境恢复后是否可以正确卸载;

13)卸载是否支持取消功能,单击取消后软件卸载情况是否正常。

软件更新测试要点

当客户端有新版本时,有更新提示;软件更新一定要测,确保Android软件更新可以正确更新新版本,且安装运行正确;确保IOS软件更新会有限制,正式版只有上了商店且有版本更新时才能测试;用户取消版本更新时,老版本可以正常使用,但是下次启动应用时,仍出现更新提示;

当有新版本时,不删除客户端的情况下,直接更新检查是否能正常更新,且更新后客户端的功能是否最新版本(正常来讲不用强制删除本地客户端可以正常更新;

出现跨版本更新的时候,可以更新成功。

性能测试要点及常见缺陷

1、常见的性能方面的缺陷

1)加载时间过长;

2)应用程序首次启动速度慢;

3)进入某个界面速度慢;

4)启动某一有动画效果的界面,动画执行过程不流畅,或者动画执行卡顿时间长;

5)响应某一用户事件时长时间无响应;

6)应用长时间运行后,随机出现卡顿现象;

7)服务器无法响应,报HTTP500错误;

8)APP出现黑白屏;

9)APP崩溃。

性能测试要点

性能也是衡量APP质量的一个指标,如果加载时间过长,响应时间过长,用户没耐心等待,很可能直接卸载APP

1)APP的启动时长是否过长;

2)APP使用时对CPU、内存的消耗情况;

3)APP使用时Crash的几率是否较多,可以进行埋点分析测试;

4)APP使用时,电量流量的使用;

5)反复长期的操作情况下,系统该资源的使用情况;

6)响应能力测试,验证各种情况下不通操作能否满足用户的响应请求。

用户体验性测试及常见缺陷

以主观的普通消费者的角度去感知产品或服务的舒适、有用、易用、友好亲切程度。通过不同个体、独立空间和非经验的统计复用方式去有效评价产品的体验特性,提出修改意见提升产品的潜在客户满意度。主要从易用性和友好性方面进行测试。

1、常见缺陷

1)界面显示是否美观,界面的色彩、字体大小是否合适、布局是否美观,提示语是否友好;

2)按钮、对话框、列表和窗口等是否符合用户的使用习惯;

3)是否易于导航、导航是否直观、导航与页面结构、菜单、连接页面的风格是否一致。

4)用户体验性类的缺陷

5)界面显示不美观、界面色彩用户使用不舒服、界面色彩和按钮、其他的编辑框等不搭调、图片和字体显示布局不美观(文字包围图片方面)、界面的字体不满足视力不好的用户、菜单层次太深、相关的选项离得太远、按钮不可点击(如果按钮处于不可用状态,一定要灰掉,或者拿掉按钮,否则会给用户误导);

6)超长的页面加载时间,移动端的要求比较高,一般要求无等待间隔的加载,页面加载时间过长,会导致用户没耐心等待而弃用该APP;

7)页面排版过长,一般很少有浏览者有兴趣看页面中最下面的内容, 90%的用户,打开一个页面,只浏览第一屏的内容,就以为看到了全部,而不会向下滚动。一个过长的页面很容易引起浏览者的视觉疲劳;

8)不友好的导航,不友好的导航是最影响用户操作的,不能让用户很方便的找到自己想到的内容。用户来到一个页面不知如何返回上一页,不知道当前页面是在哪个栏目下的。这样很可能用户来了一次就不会再来了,这也是现在比较强调信息架构设计的原因,导航设计是信息架构中的一部分。用户每次都得用重新打开APP的方式来寻找内容的话,很难有用户会留存;

9)过期的信息,很久不更新的信息,很容易让浏览者感到反感,而且在心中也会对你这个产品的品牌形象大打折扣。过期的新闻,过期的促销信息、活动信息都是致命伤;

10)死链接或链接错误;

11)缺少互动的内容,缺少用户的参与,不能让用户表达情感和思想,注定这个产品只是个固步自封的产品。现在最基本的,都要提供的一个“意见反馈”的入口,以便产品的忠实用户发表看法,从而收集这部分反馈去改进产品。再者有互动的口子,也会让用户觉得产品是比较开放的;

12)恶意插件,恶意弹出窗口;

13)提示语粗暴不友好。

交叉事件的测试要点及常见缺陷

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

1、交叉性方面缺陷

手机的基本功能就是作为通讯工具进行使用,所以我们在使用APP中肯定会有电话、短信、蓝牙、闹钟等进入,并且这些功能比APP的优先级高,一旦同时出现, APP要后台运行或者进行处理让基本功能优先工作。在测试过程中会出现电话进入APP崩溃或卡死的现象,闹钟响起APP挂起等现象、 APP运行同时电话进入,电话无法接听等。这方面的问题非常严重,如果APP引起手机基本功能无法使用,用户是无论如何也接受不了的。

2、交叉事件主要测试要点

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

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

APP运行时拨打/接听电话;

APP运行时发送/接收信息;

APP运行时发送/收取邮件;

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

APP运行时浏览网络;

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

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

用户界面测试要点及常见缺陷

测试用户界面(如菜单、对话框、窗口和其它可规控件)布局、风格是否满足客户要求、文字是否正确、页面是否美观、文字、图片组合是否完美、操作是否友好等。

UI测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。确保用户界面符合公司或行业的标准。包括用户友好性、人性化、易操作性测试。

1、用户界面类的缺陷

不符合 UI 设计或与界面原型不一致

如APP的某个功能的界面风格和整体界面风格不一致,或者和图片、文字、按钮等不协调,此类问题虽然不存在使用上的问题,但是用户感觉非常不好,也给用户留下该研发团队不专业或者产品粗制滥造等印象,用户也不会使用太久或者直接卸载。

2、界面显示不完全

APP由于功能相对简单,但是又要给人直观印象,所以图片作为首选使用,尤其在首页进行产品展示或者重要信息传递媒介会经常使用,但是在实际测试过程中会出现页面加载不完善的情况,如:图片显示不完全,按钮显示错乱,请求新页面的内容成功返回后和原来的界面内容重叠、在编辑框输入内容过长,向服务器提交请求返回数据和其他内容重叠等。

上拉刷新和下拉刷新时出现页面加载错误

手机客户端,内容超过一页时,上拉加载更多内容,加载错误(容易出现数据重复,图片和文章不匹配,图片重复加载,文章标题和内容不一致等情况)

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

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

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

相关文章

嵌入式常见的几种接口

嵌入式开发中,常见的外设通信接口/协议有SPI,I2C,UART三种,本文先分三个部分对SPI,I2C,UART进行介绍,最后对这三种协议进行比较。 1 SPI 1.1 SPI的简介 SPI(Serial Peripheral …

P0级事故频发后,这家公司终于醒悟了!

近期,国内的互联网大厂接连爆发P0级事件,阿里云崩完滴滴崩,企业在追求效益的前提是业务的连续和稳定。如果发生故障不能快速恢复,引发业务中断,给企业带来的损失是巨大的,换言之,企业需要一套清…

C++ 学习笔记——C++纯虚函数和抽象类

C纯虚函数 什么是纯虚函数 1,纯虚函数只有函数名、参数、返回值类型。 2,纯虚函数的定义是在函数句首使用 virtual 关键字修饰,并且在句末增加 “ 0”。 virtual void funtion() 0;3,纯虚函数只有声明,基类可以存…

新开普掌上校园服务管理平台service.action RCE漏洞复现 [附POC]

文章目录 新开普掌上校园服务管理平台service.action RCE漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 新开普掌上校园服务管理平台service.action RCE漏洞复现 [附POC] 0x01 前言 免责声明:请勿…

(学习笔记)Xposed模块编写(一)

前提:需要已经安装Xposed Installer 1. 新建一个AS项目 并把MainActvity和layout_activiyt.xml这两个文件删掉,然后在AndriodManifest.xml中去掉这个Activity的声明 2. 在settings.gralde文件中加上阿里云的仓库地址,否则Xposed依赖无法下载 …

学习笔记三十五:Ingress-controller高可用

Ingress-controller高可用 Ingress-controller高可用特别注意: 通过keepalivednginx实现ingress-nginx-controller高可用安装nginx主备:修改nginx配置文件。主备一样keepalive配置主keepalived备keepalivek8snode1和k8snode2启动服务测试vip是否绑定成功…

Hive:从HDFS回收站恢复被删的表

场景 一张手工维护的内部表,本来排查没有使用,然后删掉了,发现又需要使用,只能恢复这张表了。 1.确认HDFS是否开启回收站功能 2.查看回收站中的数据 被删除的数据会放在删除数据时使用的用户目录下,如:使…

【C语言期末不挂科——指针进阶篇】【上】

C语言进阶篇【上】 文章目录 C语言进阶篇【上】字符指针数组指针数组传参和指针传参  数组传参  一级指针传参  二级指针传参 前言: 我们在指针初阶篇学习了: 1、指针就是个变量,用来存放地址,地址唯一标识一块空间。 2、指…

Android自动化测试中使用ADB进行网络状态管理!

技术分享:使用ADB进行Android网络状态管理 Android自动化测试中的网络状态切换是提高测试覆盖率、捕获潜在问题的关键步骤之一,本文将介绍 如何使用ADB检测和管理Android设备的网络状态。 自动化测试中的网络状态切换变得尤为重要。 网络状态查询 adb s…

esp32-s3部署yolox_nano进行目标检测

ESP32-S3部署yolox_nano进行目标检测 一、生成模型部署项目01 环境02 配置TVM包03 模型量化3.1预处理3.2 量化 04 生成项目 二、烧录程序 手上的是ESP32-S3-WROOM-1 N8R8芯片,整个链路跑通了,但是识别速度太慢了,20秒一张图,所以暂…

C语言线性表的链式存储(详解)

线性表的链式存储 线性表的顺序存储:用一块连续的内存空间 线性表的链式存储:不连续的内存空间 链表是由一系列的节点组成,每个节点包含两个域,一个是数据域,一个是指针域 链表的插入和删除原理 单项链表框架的搭建 …

深度学习毕设项目 医学大数据分析 - 心血管疾病分析

# 1 前言 🚩 基于大数据的心血管疾病分析 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分创新点:4分 1 课题背景 本项目的任务是利用患者的检查结果预测心血管疾病(CVD)的存在与否。 2 数据…

老师怎么分配学生座位

学生座位分配是教育过程中的一个重要环节,对于学生的学习效果、课堂氛围以及师生互动都有一定的影响。那么,老师应该如何分配学生的座位呢? 了解每个学生的个性特点和学习习惯。不同的学生有不同的性格和特点,老师需要充分了解每个…

MAMP Pro v6.8.1(PHP/MySQL开发环境)

MAMP Pro是一款专为Mac用户设计的全功能本地服务器软件,可以将电脑变成一个完整的Web开发环境。无论个人开发者、网站管理员还是团队协作,MAMP Pro都提供了强大的工具和便捷的管理方式,能够更加高效地构建和测试网站。 MAMP Pro的基本功能包括…

Appium+Pytest实现app并发测试

前言 这个功能已经写完很长时间了,一直没有发出来,今天先把代码发出来吧,有一些代码是参考网上写的,具体的代码说明今天暂时先不发了,代码解释的太详细还得我花点时间^_^, 毕竟想让每个人都能看明白也不容易&#xff…

uniapp 使用web-view外接三方

来源 前阵子有个需求是需要在原有的项目上加入一个电子签名的功能,为了兼容性和复用性后面解决方法是将这个电子签名写在一个新的项目中,然后原有的项目使用web-view接入这个电子签名项目; 最近又有一个需求,是需要接入第三方的…

LeetCode(43)快乐数【哈希表】【简单】

目录 1.题目2.答案3.提交结果截图 链接: 快乐数 1.题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也…

干销售找不到客户怎么办?

干销售找不到客户怎么办? 销售找不到客户?别担心,我们有解决方案! 当你面临销售找不到客户的困境时,不要轻易放弃。相反,你可以采取一些策略来帮助你找到潜在的客户。以下是一些建议,它们将有…

什么是API? (应用程序编程接口)

我们经常听到 API 这个专业名称。那么什么是 API 呢? 定义 API(Application Programming Interface,应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。目的是提供应用程序与开发人员基于某软…

47、Flink 的指标报告介绍(graphite、influxdb、prometheus、statsd和datalog)及示例(jmx和slf4j示例)

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…