进阶之App 测试

 

App知识点

什么是activity

Activity一个应用程序的组件,它提供一个屏幕来与用户交互。

Activity:应用程序中,一个Activity就相当于手机屏幕,它是一种可以包含用户界面的组件,主要用于和用户进行交互。一个应用程序可以包含许多活动,比如事件的点击,一般都会触发一个新的Activity。

Activity生命周期

四种状态: 1、运行 2、暂停 3、停止 4、系统回收(killed)

Android四大组件

Android四大基本组件:Activity、BroadcastReceiver广播接收器、ContentProvider内容提供者、Service服务。

app测试点
1、安装、卸载测试

2、功能测试

根据需求文档和UI图设计测试用例,执行测试

3、数据安全性或者敏感性测试

密码、手机号、身份证等加密传输,文字显示等敏感词规避

4、异常场景

中断测试,比如电话来电、短信、推送消息等,app的返回功能等

5、网络测试

无网情况下,app各个功能的表现,关注用户体验和闪退问题

弱网下,各个功能点的异常反应

网络切换测试,wif和4G网络切换的场景

6、兼容性测试

App和安卓,一般放到最后进行,待测试结束之前

7、app升级测试

       主要关注大小版本升级,跨版本升级,以及缓存清除机制等。

APP版本升级,即为整个APP内容升级,Android和IOS一致,分为强制升级和非强制升级。

8、性能测试

        如果已经能感觉出来系统响应慢,需要提相应的bug跟踪,并且要具备初步排查分析的能力,比如:查看每一个报文的响应时间,前后端分别耗时,后端如果涉及多接口,每一个接口的耗时等,简单分析性能的瓶颈。

        iOS腾讯GT内嵌,Android通过weTest助手软件进行监测


web测试需要中的点

用户界面测试:用户界面测试要注意是否有使用说明、站点地图和导航条,还要关注内容、颜色/背景、图片表格等。

功能测试:功能测试要关注链接、信息交互、数据校验等。

接口测试:接口测试关注服务器接口、外部接口、错误处理等。

兼容性测试:兼容性测试要关注操作系统、浏览器、Modem/连接速率、硬件设备等的兼容性。

负载/压力测试:要关注瞬间访问高峰、每个用户传送大量数据、长时间的使用等。

安全测试:要关注目录设置、登录、日志文件等。

 

App测试和Web测试的区别?

相同点:功能测试和UI层面

不同点:

兼容性测试:在web端是兼容浏览器,在App端兼容的是手机设备

安装测试:WEB测试基本上没有客户端层面的安装测试,但是App测试是存在客户端层面的安装测试,那么就具备相关的测试点(能否正常的安装、运行、卸载,Android平台安装时还要看同版本覆盖安装,低版本覆盖高版本安装)

交叉事件测试:在操作某个软件时,来电话、来短信,推送消息、电量不足提示等外部事件。

操作类型测试:如横屏测试,手势测试

网络测试:包含弱网和网络切换测试

升级测试:升级测试的提醒机制,升级取消是否会影响原有功能的使用,升级后用户数据是否被清除了。

 

App测试中ios和Android有哪些区别呢?

1.多分辨率测试,Android端20多种,ios较少;

3.手机操作系统,Android较多,ios较少且不能降级,只能单向升级;新的ios系统中的资源库不能完全兼容低版本中的ios系统中的应用,低版本ios系统中的应用调用了新的资源库,会直接导致闪退(Crash);

4.操作习惯:Android,Back键是否被重写,测试点击Back键后的反馈是否正确;应用数据从内存移动到SD卡后能否正常运行等;

5.push测试:Android:点击home键,程序后台运行时,此时接收到push,点击后唤醒应用,此时是否可以正确跳转;ios,点击home键关闭程序和屏幕锁屏的情况(红点的显示); 6.安装卸载测试:Android的下载和安装的平台和工具和渠道比较多,ios主要有app store,iTunes和testflight下载;

 7.升级测试:可以被升级的必要条件:新旧版本具有相同的签名;新旧版本具有相同的包名;有一个标示符区分新旧版本(如版本号),对于Android若有内置的应用需检查升级之后内置文件是否匹配(如内置的输入法)

 

 

app导致ANR的原因有如下几点:

 1.耗时的网络访问

 2.大量的数据读写

 3.数据库操作

 4.硬件操作(比如camera)

 5.调用thread的join()方法、sleep()方法、wait()方法或者等待线程锁的时候 6.service binder的数量达到上限

 7.system server中发生WatchDog ANR

 8.service忙导致超时无响应

 9.其他线程持有锁,导致主线程等待超时 10.其它线程终止或崩溃导致主线程一直等待。

 

 

app对于不稳定偶然出现anr和crash时候你是怎么处理的?

1、app开发保存错误日志到本地

2、实时抓取

3、第三方sdk统计工具

一般接入了第三方统计sdk,比如友盟统计,在友盟的后台会抓到报错的日志

 

压力测试

 

压测范围:

对提测范围内TOP54个用例进行接口性能压测、容量测试、综合场景压测、稳定性压测

压测目的:

对系统进行性能评估,验证系统在并发下TPS、响应时间和错误率符合压测标准

压测场景:

容量指标测试:根据产品预估系统5年数据量,参数化相关数据录入数据库;

接口性能压测:提测范围内TOP54个用例,每个用例单独性能评估;

综合场景压测:综合压测主要场景,测试性能指标是否符合PV、TPS、响应时间、成功率等指标;

稳定性压测:使用综合场景脚本,持续进行48小时系统稳定性测试,分析性能结果;

app性能测试

指标说明

 

 

场景

说明

其它

CPU使用率

在测试的过程中,取CPU使用率平均值

 

内存使用率

在测试的过程中,取内存降(Max-Min)值

 

流畅度帧率

流畅度均值:测试全程平均单帧绘制时长;

 

耗电量

利用系统工程模式测试电池电压降(Max-Min)数值

 

网络IO吞吐率

前后台交互时,占用网络IO的通讯时长和大小

 

App启动时间

App启动到加载到首屏的时长

 

关键路径耗时

在操作的过程中,关键业务的请求耗时

 

关键路径流量

在操作的过程中,关键业务的流量消耗

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值