一种页面流畅度的测试方法及装置与流程
- 国知局
- 2025-01-10 13:29:55
本发明涉及通信,特别涉及一种页面流畅度的测试方法及装置。
背景技术:
1、在app的研发过程中,页面流畅度测试是其中不可或缺的环节,现有的的页面流畅度测试方法通常通过采用systrace工具以及在代码中添加监测逻辑choreographer类来记录跟踪数据或帧率数据。而由于app通常在手机端进行运行,受到运行环境(cpu温度、设备电量、运行时内存消耗等)的运行差异,页面每次加载时长都会有一定的差异,现有的测试方法测试环境部署复杂、需要手动记录帧率信息并计算,容易出现人工操作的误差,同时还需要在app源码内添加监测逻辑、测试步骤繁琐,耗时耗力,且不能批量执行不同的测试场景,存在明显缺点。
技术实现思路
1、有鉴于此,本发明提出了一种页面流畅度的测试方法及装置,具体方案如下:
2、第一方面,提出了一种页面流畅度的测试方法,应用于一种具有屏幕的智能终端设备上;具体步骤包括:
3、确定与屏幕上待测试的页面对应的场景;
4、确定与场景对应的测试数据;不同的场景对应不同的测试数据;
5、在当前的场景中,基于测试数据确定测试模式;测试模式包括:点击模式和滑动模式;
6、若确定测试模式为点击模式,则在页面上进行点击测试,点击测试包括在页面上进行滑动操作和点击操作;
7、若确定测试模式为滑动模式,则在页面上进行滑动测试,滑动测试包括在页面上进行滑动操作;
8、获取点击测试或滑动测试中的总绘制帧数和掉帧数,计算得到流畅度数据。
9、在一些具体实施例中,点击测试包括:
10、获取滑动操作的起始坐标和结束坐标;
11、停顿预设时间后,随机生成滑动操作的滑动速度;
12、基于滑动速度、预设的滑动函数和预设的点击函数在页面进行滑动操作和点击操作;
13、计算滑动操作的滑动时间,根据滑动时间确定每次点击操作和/或滑动操作之间停顿时间的长度;
14、更新滑动速度,并基于确定的滑动速度更新滑动函数;
15、基于更新后的滑动速度、预设的点击函数和更新后的滑动函数执行“在页面进行滑动操作和点击操作”的步骤。
16、在一些具体实施例中,滑动模式包括第一滑动模式;若确定测试模式为第一滑动模式,滑动测试包括:
17、获取滑动操作的起始坐标和结束坐标;
18、停顿预设时间后,随机生成滑动操作的滑动速度;
19、基于滑动速度和预设的滑动函数在页面进行滑动操作;
20、计算滑动时间,根据滑动时间确定每次滑动操作之间停顿时间的长度;
21、更新滑动操作的滑动速度,并基于确定的滑动速度更新滑动函数;
22、基于更新后的滑动速度和更新后的滑动函数执行“在页面进行滑动操作”的步骤。
23、在一些具体实施例中,滑动模式包括第二滑动模式;若确定测试模式为第二滑动模式,滑动测试包括:
24、获取滑动操作的起始坐标和结束坐标;
25、获取智能终端设备的屏幕分辨率;
26、根据屏幕分辨率对起始坐标和结束坐标进行转换,得到转换后的实际起始坐标和实际结束坐标;
27、停顿预设时间后,随机生成滑动操作的滑动速度,基于滑动速度和预设的滑动函数在页面进行滑动操作;
28、计算滑动操作的滑动时间,根据滑动时间确定每次滑动操作之间停顿时间的长度;
29、更新滑动操作的滑动速度,并基于确定的滑动速度更新滑动函数;
30、基于更新后的滑动速度和更新后的滑动函数执行“在页面进行滑动操作”的步骤。
31、在实际应用中,带有屏幕的智能终端设备可以是手机,而在实际情况中,不同品牌的不同手机之间屏幕的分辨率大小存在不同,这使得页面在不同手机上的滑动测试位置可能存在误差,不同手机的屏幕大小之间存在着测试位置无法兼容的问题。如对于同一页面滑动相同的内容,实际上在不同屏幕大小、不同屏幕分辨率大小的设备上用户所需要滑动手指的距离是不一样的。
32、因此,在滑动测试过程中,通过根据屏幕分辨率来对滑动操作的起始坐标以及结束坐标进行转化,可以使得在不同的设备屏幕上的滑动操作位置依旧可以统一,进一步实现对于不同品牌的智能终端设备的测试情况进行兼容,能够更好地模拟用户在屏幕上进行滑动的操作。
33、在一些具体实施例中,根据屏幕分辨率对起始坐标和结束坐标进行转换,得到转换后的实际起始坐标和实际结束坐标的过程包括:
34、得到起始坐标以及结束坐标相对于页面的宽百分比参数x和相对于页面的高百分比参数y;
35、将x与屏幕分辨率对应页面宽的像素数相乘,得到转换后的实际起始坐标以及实际结束坐标的横坐标;将y与屏幕分辨率对应页面高的像素数相乘,得到转换后的实际起始坐标以及实际结束坐标的纵坐标。
36、在一些具体实施例中,测试数据包括:页面的宽高百分比参数、和/或滑动测试对应的起始坐标以及结束坐标、和/或滑动次数、和/或点击次数、和/或滑动时间范围。
37、在一些具体实施例中,在确定与屏幕上待测试的页面对应的场景之前,还包括:将预设的多组场景、多组待测试的页面和每一场景对应的测试数据进行预存储。
38、在实际应用中,场景、待测试页面具有多组,在计算得到当前场景对应的流畅度数据之后,检测是否所有页面的所有场景均测试完毕,若所有页面的所有场景均测试完毕,则根据所有场景对应的流畅度数据输出测试报告;
39、若存在未测试的页面及场景,则确定下一待测试的页面,执行确定与屏幕上待测试的页面对应的场景的步骤,直到所有页面以及页面所对应的场景均测试完毕,据所有场景对应的流畅度数据输出测试报告。
40、在一些具体实施例中,还包括:当测试过程中的任一步骤存在异常时,捕获异常并显示异常,停止测试。
41、在一个具体实施例中,获取点击测试或滑动测试中的总绘制帧数和掉帧数,计算得到流畅度数据的过程包括:
42、确定点击测试或滑动测试的总测试时间,用总绘制帧数减去掉帧数得到实际绘制帧数;用实际绘制帧数除以总测试时间得到平均帧率;
43、预定义有流畅度指标,当平均帧率达到预设高流畅度的对应值,则判定该场景下的页面流畅度较好;
44、当平均帧率达到预设中流畅度的对应值,则判定该场景下的页面流畅度一般;
45、当平均帧率达到预设低流畅度的对应值,则判定该场景下的页面流畅度较差。
46、在实际应用中,流畅度指标还可以根据实际需要调整为具有更丰富的评价标准,如采用掉帧数占比作为判定指标。
47、第二方面,提出了一种页面流畅度的测试装置,用于实现如前述技术方案中的任一种页面流畅度测试方法,包括:
48、场景匹配单元,用于确定与屏幕上待测试的页面对应的场景,确定与场景对应的测试数据;不同的场景对应不同的测试数据;
49、测试单元,用于基于测试数据确定测试模式,若确定测试模式为点击模式,则在页面上进行点击测试,若确定测试模式为滑动模式,则在页面上进行滑动测试;
50、计算单元,用于获取点击测试或滑动测试中的总绘制帧数和掉帧数,计算得到流畅度数据。
51、在一些具体实施例中,还包括坐标转化单元;
52、坐标转化单元用于获取滑动操作的起始坐标和结束坐标,获取智能终端设备的屏幕分辨率,根据屏幕分辨率对起始坐标和结束坐标进行转换,得到转换后的实际起始坐标和实际结束坐标。
53、在实际应用中,场景、待测试页面具有多组,还包括测试报告生成单元,用于在所有页面的所有场景均测试完毕时,根据所有场景对应的流畅度数据输出测试报告。
54、在一个实际应用的过程中,这一页面流畅度的测试装置可以是一种带有屏幕的智能终端设备;也可以是通过将这一页面流畅度的测试装置与具有屏幕的智能终端设备进行连接,来实现对于页面的流畅度进行测试的过程。
55、有益效果:本技术提出了一种页面流畅度的测试方法及装置,通过确定与屏幕上待测试的页面对应的场景;在当前的场景中,确定与场景对应的测试数据;其中不同的场景对应不同的测试数据;基于测试数据确定测试模式,通过在页面上进行点击测试和/或滑动测试,获取点击测试或滑动测试中的总绘制帧数和掉帧数,最终计算得到流畅度数据。通过这一方法和装置,可以实现了自动模拟人工操作进行不同场景、不同预设测试数据下不同模式的页面流畅度测试,能够自动精确记录智能终端设备的屏幕上所显示页面在测试期间的总绘制帧数和掉帧数,高度自动化,能够批量进行页面的测试,可以有效提高测试的效率和精确度。
本文地址:https://www.jishuxx.com/zhuanli/20250110/353493.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。