跑三小时的monkey测试该怎么算_浅谈App测试(下)~带音频

文 | Vicky

采编|Emily

3374b29f2947784644732404a7facdf5.png

浅谈App测试(上)~带音频

一、功能测试​

二、性能测试

(1)耗电量

影响因素:定位、传感器、蓝牙,其中CPU、持续定位是两个平台造成耗电的主要因素。

(2)流量

也就是常说的耗流量,影响因素有重复请求,重复下载,大图。

(3)内存

跟性能相关的概念有内存泄漏、内存占用峰值,其中通常造成性能体验问题的是内存泄漏,会导致用户手机可用内存越来越少,app越来越卡。

Xcode中有一个 Allocations工具,可以跟踪由应用程序分配的对象内存。可以用来在疑似内存泄露的地方,通过反复操作,查看某些对象内存是否有被正常的释放,从而得知是否发生内存泄露,针对性进行分析和优化。

(4)卡顿

FPS意思是每秒传输帧数,也就是我们常说的"刷新率"。每秒钟帧数愈多,所显示的画面就会愈流畅,FPS值越低就越卡顿,一般我们的APP的FPS只要保持在 50-60之间,是比较流畅的。

影响因素:通常有UI布局不合理,过度绘制;主线程执行耗时操作耗CPU;内存不足,有占用GPU较长的函数。

(5)启动时间

APP的启动时间,直接影响用户对你的APP的第一体验和判断。如果启动时间过长,不单单体验直线下降,而且可能会激发苹果的watch dog机制kill掉你的APP,那就悲剧了。

一般是分析app的启动过程,查看耗时的环节进行分析。可能是在启动的时候加载的配置太多,或者是需要拉取的接口太多,具体情况。

(6)安装包大小

(1)资源优化。删除冗余资源,资源文件最少化等。

(2)图片优化。格式的图片做压缩处理

(3)插件化。比如功能模块放在服务器上,按需下载,可以减少安装包大小。

(7)稳定性

7*24小时跑monkey, 一般是通过自动化的方式跑7*24小时,看程序会不会崩溃

三、兼容性测试

从不同系统,版本,分辨率,机型(不同厂家ROM)维度进行适配测试

(1)尽量覆盖该产品的主要用户,一般采取APP内部埋点的方法统计用户机型分布,取top10来覆盖。

(2)关注各功能界面在不同分辨率下是否存在UI展示问题比如出现错位,遮挡,留白,拉伸和模糊等问题。

(3)通常选择在少数主流设备上执行所有用例,在其他兼容性范围内的设备上覆盖主要功能的测试用例;

四、异常测试

1.接口异常,比如接口超时、接口返回值与约定不一致,App需要做异常兼容处理

2.内存不足,app能否正常响应;

3.反复操作:反复操作某个功能(一般是比较重要的功能),不断点击和刷新,是否会出现闪退

4.系统中断,像电话、短信在app运行过程中被中断了,结束后是否可以正常运行;

5.弱网:wifi、4G/3G/2G、wifi与数据流量的切换


新书速递

吴老的java版《selenium webdriver3 实战宝典》和python版《selenium Webdriver 3.0 自动化测试框架实战指南》出版了,代码拿来就能用。

测试资源

40G测试开发课程视频资源免费提供,请联系吴老师微信wulaoshi1978

d474abb04109e92c626c1e64bdc58b0d.png

微信公众号:光荣之路(ID: GloryRoadTrain)

招聘QQ群:203715128

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

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

相关文章

Flask基础(03)--创建第一个Flask程序

# 导入Flask from flask import Flask# 创建Flask的应用程序 # 参数__name__指的是Flask所对应的模块,其决定静态文件从哪个地方开始寻找 app Flask(__name__,static_url_path/static, # 静态文件的访问路径,默认为/staticstatic_folderstatic, # 静态…

2016-2017-2 《Java程序设计》课程学生博客和代码托管链接

2016-2017-2 《Java程序设计》课程学生博客和代码托管链接 博客 1552 20155201 李卓雯20155202 张 旭20155203 杜可欣20155204 王 昊20155205 郝博雅20155206 赵 飞20155207 王雪纯20155208 徐子涵20155209 林虹宇20155210 潘滢昊20155211 解雪莹20155212 江振思20155213 陆忠民…

C++快速排序

快速排序作为排序家族里面最为快捷的方式,值得思考。我们将一个数组中的某一个数定为基点,然后通过快速排序按照需求(假设升序),将比基点小的数丢在基点左边,把比基点大的数丢在基点右边这样来将基点数的正…

回顾一年的工作历程_【设备管理公司】召开20202021年度总结计划表彰暨工作述职会议...

点击上方蓝字关注我们2020年即将过去,为了总结2020年各项工作开展情况,同时做好2021年工作计划与部署,2020年12月30日-31日,设备管理公司组织召开了2020-2021年度总结计划表彰暨工作述职会议。公司领导、各部门经理、部门主管、车…

注册验证的时候一直出现的报错问题,终于解决了

今天再注册验证表单的时候一直报错,但是什么都没有改,就报错了,后面才知道原来是和我上次上传图片的时候,导入的2个js的顺序有关系的, 45行和41行互相换一下位置就好了 转载于:https://www.cnblogs.com/likeji/p/61433…

重排序

一、重排序。 1、为什么需要重排序? 现在的CPU一般采用流水线来执行指令。一个指令的执行被分成:取指、译码、访存、执行、写回、等若干个阶段。然后,多条指令可以同时存在于流水线中,同时被执行。 指令流水线并不是串行的&#x…

tableau三轴该怎么做_如何用tableau绘制城市地铁线路图?

在用tableau绘制地铁线路图之前,当然是要获取相关的数据啦我们以郑州目前已开通的地铁为例,分别是1、2、5号线经度、维度可在 网页上自行搜索哦(以谷歌地图为准)有了这些下面我们就要开始啦将Excel中你所需要的数据直接导入到tabl…

JS七种加密解密方法

HTML或JS加密解密 本文一共介绍了七种方法:   一:最简单的加密解密   二:转义字符"\"的妙用   三:使用Microsoft出品的脚本编码器Script Encoder来进行编码 (自创简单解码)  …

提高solr的搜索速度

之前是使用12台机分布式搜索,1台为主机做索引并分发给子机,8台做大索引搜索服务,3 台做小索引搜索服务,配置基本是内存在4-8G,cpu:2-8core的服务器,索引的大小为8G。搜索的响应时间 是150ms左右。&#xff…

哲学到编程:思想的实例化

万古长江水,千年儒释道。历史的长流中,芸芸众生,参差不齐,但总是能够总结出一个“生旦净末丑”来。儒、释、道,五千年的中华文化,却总是围绕着这三种主流思想交相演绎。千年间,豪士俊杰&#xf…

python 字符串交集_Python序列--集合(set)

集合集合用于保存不重复元素。- 集合和列表非常相似- 不同点:1.集合中只能存储不可变对象2.集合中存储的对象是无序(不是按照元素的插入顺序保存)3.集合中不能出现重复的元素集合的所有元素都放在一对”{ }” 中,两个相邻的元素之间用”,”分隔。集合最好…

mysql binlog日志查看及解码

mysql bin log日志导出 mysqlbinlog mysql-bin.000005 > /home/17bin.log 需要添加参数(--base64-outputdecode-rows -v)对输出结果解码 mysqlbinlog --base64-outputdecode-rows -v mysql-bin.000005 > /home/17bin.log转载于:https://www.cnbl…

【Python开发】Python的GUI用法总结

引用模块(tkinter): 1 from tkinter import * 主窗口设置: 1 # 主窗口 2 tk Tk() # 主窗口实例化 3 tk.title("文本处理工具") # 主窗口标题 4 tk.geometry("700x4001001…

JAVA 环境变量配置

JAVA 环境变量配置 1. 安装JDK 2.配置系统变量 新建          JAVA_HOME:D:\Program Files\Java\jdk1.8.0_65 Path添加       %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 新建CLASSPATH  .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 3.完成…

8修改host_正点原子【STM32-F407探索者】第五十九章 USB 鼠标键盘(Host)实验

1)资料下载:点击资料即可下载2)对正点原子Linux感兴趣的同学可以加群讨论:9354467413)关注正点原子公众号,获取最新资料更新上一章我们向大家介绍了如何利用 STM32F4 的 USB HOST 接口来驱动 U 盘,本章,我们 将利用 ST…

CF815C Karen and Supermarket [树形DP]

题目传送门 Karen and Supermarket On the way home, Karen decided to stop by the supermarket to buy some groceries. She needs to buy a lot of goods, but since she is a student her budget is still quite limited. In fact, she can only spend up to b dollars. Th…

linux命令积累之egrep命令

学搭建Nginx环境,必须要配置的Nginx.conf文件中,如下:#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worke…

Sublime Text 3 安装及插件推荐

本篇介绍跨平台编辑器Sublime Text 3的安装和其插件推荐。 目录: 1.介绍 2.下载安装 3.插件 4.参考资料 1.介绍 Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定&#xff0c…

6工程文件夹作用_data_dragon数据工程小工具收集

最近在GitHub上创建了一个新工程,收集个人在数据工程工作的小工具集合,命名为data_dragon (数据一条龙)。取这个名字的是希望这些脚本或代码能够复用,端到端地减少临时数据处理的时间。最近因为工作上的一些变化,写作节奏有点被打…

暑假第十七测

题解&#xff1a; 第一题 #include<bits/stdc.h> using namespace std; #define ll long long const int M 1e5 10; ll a[M], b[M], ans; priority_queue <ll, vector<ll> , greater<ll> > Q; int main(){freopen("buy.in","r",…