【App测试技术】

编程知识 更新时间:2023-04-29 07:20:36

移动端测试技术概述

尽早发现软件缺陷,并确保缺陷修复!

广义的讲包括手机、笔记本、平板电脑、POS机甚至包括车载电脑。但是大部分情况下是指手机或者具有多种应用的智能手机以及平板电脑

1)、 IOS简介:

Ios的智能手机操作系统的原名为iPhoneOS,其核心于Mac OS X 的核心同样都源自于APple Darwim。它主要是给iPhone和ipodtouch使用。

iphomeOS的系统架构分为四个层次:核心操作系统层,核心服务层,媒体层,可轻触层。

系统操作占用大概1.1GB的存储空间。

IOS由两部分组成:操作系统和能在IPhome和iPod 透彻设备上运行原生程序的技术。

2)、 ANDROID简介:

Andriod是一种以Linux为基础的开放源代码操作系统。

Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年有Google 收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑以及其他领域上。

Android的主要竞争对手是苹果公司的ios以及RIM的blackberry OS。

APP功能测试

根据软件说明或用户需求验证APP的各个功能实现:

  1. 根据需求,提炼APP的用户使用场景,验证功能。
  2. 根据相关测试标准,验证功能。
  3. 根据被测试功能点的特性采用特定的方法进行测试。
  4. 在测试过程中,及时修正业务或需求理解错误。

功能参考点:(缺陷)

  1. 功能不起作用(菜单、按钮、链接、控件失效)
  2. 功能错误(与预期的功能不一致,计算结果错误,显示结果错误)
  3. 功能缺失(缺少应该具备的菜单、按钮、选项等)
  4. 执行功能之后全系统瘫痪(崩溃,CPU不足) 【Crash奔溃,ANR应用没有响应】
  5. 执行功能之后当前功能无法继续操作
  1. UI测试

UI测试概述

  • UI User Interface(用户界面)测试的目标是确保用户通过界面能够正确、快速、有效地使用软件的各项功能。
  • 确保用户界面符合公司或行业的标准。包括用户友好性、人性化、易操作性测试,地域性。

UI测试点:

测试用户界面包括:

  1. 页面是否美观
  2. 文字是否正确
  3. 文字图片组合是否完美,操作是否友好
  4. 菜单、对话框、窗口、控件布局、分割是否满足客户要求

UI测试参考点

  用户界面缺陷

  1. 文字被截断,显示不全
  2. 控件或者文字没有对齐
  3. 控件,文字重叠
  4. 不一样的布局方式
  5. 多余的文字
  6. 丢失的文字
  7. 文字的字体,符号错误
  8. 多余的空格
  9. 打印的内容格式错误
  10. 窗口无法正常显示、只能显示局部、显示位置不正常。
  1. APP兼容性测试:
  1. 操作系统版本。
  2. 屏幕分辨率,注意分辨率的兼容性是非常容易引起bug的部分,如果开发过程中代码中没有对分辨率做适配,就容易出现,错位,遮挡,拉伸模糊等问题。
  3. 不同的手机品牌(不同的rom)Android系统碎片化引起
  4. 网络类型,移动应用在不同网络的稳定性。
  1. APP弱网测试

移动端产品的适用,用户所处的网络并非完全的流畅,WIFI环境,有一大部分用户主要适用4G、3G、2G等网络,另外因移动端产品适用场景多变,如进地铁,上公交,进电梯等,使弱网测试显得尤为重要。

考虑到各种场景的客户端展示及容错,提升产品印象和用户体验,提高产品的健壮性。弱网测试必不可少。

  1. APP稳定性测试
  • 在保证基本功能正确的基础上,APP的稳定性就显得特别重要,如果一个APP应用经常出现闪退或着卡死,用户体验很差,在有竞争的情况下,很容易造成用户流失。
  • 稳定性的问题,可以通过黑盒测试,灰度内侧,以及用户的反馈得以发现而修改。
  • 灰度测试:指内有限制的内侧,但是还是会限制用户的身份,即只有有资格的用户才可以获得内侧软件。
  • 这时一般就是最后一次测试了,然后就是公测版了。
  1. APP安全性测试

APP的安全性不言而喻,安全性涉及到权限设置,敏感信息存储,日志中的敏感信息,第三方键盘是否恶意劫持信息,造成用户数据被盗取等。以及账号密码在后台是否密文存储,密码传输是否加密,账号锁定策略等。

Example:银行APP或者支付APP密码输入键盘。

  1. APP性能测试:

APP端的性能也是影响用户体验的非常重要的方面,例如CPU和内存的使用情况,应用的响应时间,页面渲染时间都是我们要考虑的问题。

Example:

  • 内存使用过高,以及内存不够而到时的奔溃等。
  • 软件启动时要求CPU<20%,实际结果是>20%,那么就是fail。
  1. H5c测试:
  • H5即 html5 Hyper Text Markup Language,超文本标记语言。
  • H5测试和web测试很类似
  • 包括功能测试,浏览器兼容性测试,前端性能测试等。

Example:微信->我的->钱包->腾讯公益

主要术语:

分辨率:指的是屏幕上所显现出现的像素数目,它由两部分来计算,分别是水平行的点数和垂直行的点数。

Example:手机 ->设置 ->关于手机/我的设备 ->分辨率

色深:决定屏幕上每个像素有多少种颜色控制。色深的位数越高,你所能够得到的颜色就越多,屏幕上的图像质量就越好。

像素(pixel)是picture element 的简写,数字图像是由按一定间隔排列的亮度不同的像点构成的,形成像点的单位称“像素”越大越丰富。

APP功能测试:

根据软件说明或用户需求验证APP的各个功能实现

    1. 根据需求,提炼APP的用户使用场景,验证功能。
    2. 根据相关测试标准,验证功能。
    3. 根据被测试功能点的特性采用特定的方法进行测试。
    4. 在测试过程中,及时修正业务或需求理解错误。
    5. 通常使用思维导图进行测试点的设计与编写。
  1. 功能测试:

安装和卸载测试

  • 应用是否可以在android不同系统版本上安装(有的系统版本过低,应用不能适配)(满足app最低配置版本)兼容性
  • 软件安装后是否可以正常运行
  • 安装空间不足时是否有相应提示
  • 如果应用需要通过网络验证之类的安装,需要测试一下断网情况下是否有相应提示。
  • 安装过程来电,短信,闹铃,完成后,是否继续。
  • 是否可以卸载应用
  • 卸载过程中出现死机,断电,重启等意外的情况,待环境恢复后是否可以正常卸载。
  • 评估操作前后,CPU,Memory、Storange等系统资源的使用情况。
  • Debug开发日志保存.APP文件release

运行:

APP安装完成后,是否可以正常打开软件(点击icon【图标】)

APP运行时,是否有加载图标,是否有引导程序

APP的速度是可以让人接受,切换是否流畅(网络)

登录:

  • 登录用户名和密码错误时,界面有提示信息
  • 用户主动退出登录后,下次启动APP时,应该进入登录界面。
  • 对于支持自动登录的APP,退出再次登录,是否能自动登录成功。
  • 密码更改后,登录时是否做到了有效数据的效验。
  • 切换账号登录,检验登录的信息是否做到及时更新。
  • 对于多个端都进行操作时,确保数据库操作无误,且每个端可以及时看到数据的更新。
  • 对于一些软件,支持一个账号只允许登录一台机器,这时,需要检查账号登录多个手机时,是否将原来用户剔除,且能够给出提示信息
  • (微信登录)
  • APP切换到后台时,再次切换到前台的测试。
  • 对于ios与android不同设备登录同一个账号时,对个人信息等数据进行操作后,确保数据库操作无误,且ISO与android设备看到的数据库都是最新的。

离线:

  • 离线是应用程序在本地的客户端会缓存一部分数据以供程序下次调用
  • 对于一些程序,需要在登录进来后,这时没有网络的情况下可以浏览本地数据。
  • 对于无网络时,刷新获取新数据时,不能获取数据且能给出友好提示。
  • 切换到后台,在次切换到前台时可以正常查看。
  • 离线后又连上网,这时多数据库有更新时,需要从服务器端获取新数据来更新客户端数据,且要更新本地缓存信息。

消息推送开关(后台控制权限/开发配合)

针对APP自己完成消息推送的情况:

      1. 查看默认开关状态(严格根据需求定义开关)
      2. 设置开关可以自由“打开”,“关闭”
      3. 设置开关 关闭时,客户端接受不到消息推送。
      4. 设置开关打开状态下,手机消息栏可以接受到消息提醒。且点击可查看。点击后消息栏中消失。
      5. 与手机系统的权限中的消息推送组合测试。
      6. 前台 后台
      7. 前端 后端

软件更新:

  • 软件有最新版本更新时,要有更新提示.
  • 软件跟新之后,确定是更新后的版本,且安装运行正常。(曾发现更新下载不下来,提示无法更新,原因数据库源没有配置)。
  • 用户取消版本更新时,老板本可以正常使用,但是下次启动应用时,仍然出现跟新提示。
  • 在不删除旧客户端的情况下,进行版本更新且运行正常。(一般不要求删除客户端更新)(软件crash)

网络环境:

      1. 测试软件2G,3G,4G,WiFi 网络下应用运行的速度。
      2. 一般测试环境都是在公司的内网进行测试,到外网环境下进行操作是否会有异常。(测试环境,正式环境,验收环境)
      3. 网络不好或很差时,进行数据提交,数据是否交换失败。(曾把网络速度设置为0时,提交数据,一直在转->友好提示/ANR)
      4. 有网到无网在到有网环境时,数据是否可以自动恢复,正常加载。

异常测试:

多个APP应用切换

APP在清空数据或强制退后还能否正常运行;

长时间开机且开APP,看是否会出现异常情况(如果是自动登录,是否过期)

兼容性测试:

随着APP用户量越来越大,终极设备的型号越来越多,兼容性问题越来越突出。严格来说,兼容性测试本质上也是功能测试,只不过侧重点不同的软硬件中;

针对APP通常考虑三点:

  1. 操作系统版本。选择用户使用率高的操作系统版本。
  2. 屏幕分辨率,(设置->关于手机/设备信息)
  3. 尺寸
  4. 不同手机品牌,主流手机

安全性测试:

APP软件因为涉及到用户隐私,因此对APP安全性测试也很受关注。

权限问题,我们需要对APP申请某些特定权限的必要性进行检查,

数据库中敏感信息问题。

日志中包含敏感信息。

性能测试:
测试APP在不同网络速度下操作的流程程度。可以通过测试人员在使用APP时直观的感觉来验证APP性能带给用户的体验。

测试APP操作数据库的性能。APP在本地存储和读取数据时,如果操作的数据量很大。

压力测试:反复/长期操作下,系统资源是否占用异常

资源消耗(CPU、内存、流量、功耗)

LR(性能)

更多推荐

【App测试技术】

本文发布于:2023-04-21 20:08:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/b27d98937fe1db08b5322886e615b68e.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:测试   技术   App

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 94032文章数
  • 23803阅读数
  • 0评论数