首页 > 测试-给你一个APP,如何测试
头像
牛客840486262号
发布于 2021-09-03 17:16
+ 关注

测试-给你一个APP,如何测试

对于测试新手,想要做好APP测试,首先,我们应该对APP所属的操作系统有个大致的了解。

1.Android与IOS系统

  • 运行机制
    Android系统是谷歌公司以Linux为核心,开发,发行的一个智能的,开放的软件平台。其应用程序一般采用Java来进行编写的。Android系统的运行机制主要采用虚拟机,系统需要占用大量内存来换取执行速度,再加上不定期的内存回收机制。因此,使用安卓系统的手机用户,也常常因此感到手机卡顿。
    IOS系统则是苹果公司在2007年1月推出的一款封闭式手机操作系统,它的主要开发语言是Objective-C语言。由于它的运行机制主要是沙盒,整个运行过程中不需要虚拟机,因此,相比Android系统来看,其执行效率要高一些。

  • 美观与安全
    对比Android和IOS系统,在设计上,Android系统明显更多样化,辅助工具也明显多于IOS。但也正基于此,它所存在的安全隐患也明显多于IOS系统。另外,在兼容性问题上,Android也需要比IOS考虑的多一些。

  • 版本迭代
    值得注意的是,从版本迭代来说,Android系统的版本可升,可降,而IOS系统的版本只能升级。
    此外,APP测试最大的问题是网络的不稳定,以及隐私的安全的问题。

  • APP测试主要包括这几块的测试:功能测试,UI测试,性能测试,安全测试,兼容性测试,接口测试,用户体验测试等。*

2.APP测试的内容

  • 功能测试
    (1)安装卸载:在不同的操作系统下,验证安装卸载是否正常;软件是否可以通过第三方工具进行安装,卸载;安装卸载过程中是否可以取消,是否会在卸载过程中,出现重启,死机断电,断网等等;
    (2)启动运行:安装后,功能是否可以正常运行;首次启动运行时速度是否满足要求,页面之间切换是否流畅,等等;
    (3)注册登录:包括用户名和密码的长度,格式是否有限制或规则要求等;重名注册是否有提示信息;软件是否有快捷登录方式,等等;
    (4)前后台切换:切换到后台,再次返回是否停留在上一次操作的界面,功能是否正常,数据是否更新;锁屏后,再解锁进去APP,功能是否正常,数据是否更新,多个APP软件之间切换,功能是否正常;等等
    (5)升级更新:当APP有新版本时,是否有更新提示信息;当版本为非强制升级更新时,不更新是否可以正常使用;设置APP软件自动升级更新时,在无wifi的情况下,是否自动更新;等等。
    (6)异常测试:验证APP在:不同电量下;低电量提示时;充电、拔电时;弱网模式时,功能是否正常;等等。

  • UI测试
    UI测试又称用户界面测试,我们在做APP测试时,主要需要完成如下测试:
    首先确保UI界面设计符合国家的、行业的、企业的标准规范;

    关注窗口、菜单、对话框以及按钮控件的布局、风格是否满足用户要求;

    不同页面中控件大小、风格是否一致;

    页面中颜色的搭配是否合理,整体的颜色不宜过多;

    文字的提示是否友好,是否存在敏感词、关键词等;

    操作是否简单、人性化,是否有帮助指引;

    自适应界面设计,内容是否根据窗口的大小自适应调整;

    图片是否涉及版权、隐私、专利等问题。

  • 性能测试
    这主要包括手机端性能测试、服务端性能测试两个主要方面。其中,手机端性能测试,主要是检查资源问题,比如CPU、内存占用、耗电量、流量等数据的情况。
    而服务端性能,则是跟Web性能大同小异,主要是模拟大量手机用户调用接口对服务器产生负载。因此,在做测试时,两者的区别不大,可以通过Loadrunner去进行并发测试、负载测试、压力测试等。

  • 安全测试
    最近几年,用户隐私泄露问题一直是APP发展前进路上的一大隐患。因此,在做APP测试时,我们需要投入更多的精力,去考虑产品的安全问题。
    针对APP的安全测试环节,这些内容值得参考:
    安装包安全性:验证安装包是否对签名进行了校验,以防止被恶意第三方应用覆盖安装等;开发人员是否对源代码进行混淆,以免被反编译软件查看源代码;访问通讯录,有没有设定特定权限等。

    • 用户安全性:包括用户拨打电话、发短信、连接网络等是否存在扣费的风险;用户密码在传输中是否进行
      加密;当用户注销账号时,需要身份验证的接口是否可以调用;等等。

    • 数据安全性:用户的敏感数据,是否写到日志或配置文件中;当用户使用敏感数据时,是否给用户提示信息或安全警告;对安全通信的数字证书,是否进行合法的验证;等等。

    • 通信安全性:所有手机的功能应优先处理,如接电话、收短信等;当网络中断或出现异常时需要给用户网络异常的提示;等等。

    • 服务端安全性:考虑SQL注入、XSS跨站脚本攻击、CSRF跨站请求伪造以及越权访问等。

  • 兼容性测试
    APP的兼容性测试是一个耗时、耗力、成本高昂的测试工作。之所以这么说,主要是因为我们在测试时,既要考虑到手机端的软、硬件兼容性(主流APP),同时,还需要考虑手机设备的兼容性(不同品牌的手机)、操作系统不同、屏幕分辨率等问题。
    因此,在测试时,我们多采用模拟器进行。当然,如果预算成本够,也可以用真机测试,或使用第三方工具进行测试。

  • 接口测试
    对于接口测试来说,Web端与APP的接口测试思路基本相同,因此,你可以运用检测Web端口的方式,对APP接口进行测试。

  • 用户体验测试
    基于APP软件搭建的速度一般较快,因此,进行用户体验调研是非常必要的,这可以使研发者了解到更多客观的评价,得到更多修改意见,从而提升用户体验。
    因此,在做测试时,可以从这些角度考虑:
    1)从用户视角来评价产品的外观;

    2)从参与测试的人那里,了解APP的手机兼容性;

    3)从用户的角度了解页面跳转、横竖屏等,又无异常问题,设计是否合理;等等。

全部评论

(0) 回帖
加载中...
话题 回帖