软件音效的测试方法及相关装置与流程
未命名
10-19
阅读:177
评论:0
1.本技术涉及软件测试技术领域,具体而言,涉及一种软件音效的测试方法及相关装置。
背景技术:
2.无论在桌面端还是在移动端,音效是很多软件会具备的功能,因此对软件音效进行测试是确保软件能够正常运行的重要工作之一。
3.然而,目前对软件音效进行测试基本上是通过人工耳听的方式进行的,这种方式不仅效率低,人工成本高,而且严重依赖于人耳的灵敏度,而一旦人耳长时间听声音会明显导致人耳灵敏度下降,进而导致测试结果不准确。
技术实现要素:
4.本技术的实施例提供了一种软件音效的测试方法及相关装置,进而至少在一定程度上可以提高软件音效的测试效率、降低测试成本并提高测试软件音效的准确性。
5.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
6.根据本技术实施例的一个方面,提供了一种软件音效的测试方法,所述方法包括:获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据;从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列;通过建立所述第一音效特征序列中的各第一音效特征点和所述第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示所述第一音效特征序列和所述第二音效特征序列之间的差异情况的规整路径图;将所述规整路径图作为测试结果输出。
7.根据本技术实施例的一个方面,提供了一种软件音效的测试装置,所述装置包括:获取单元,用于获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据;提取单元,用于从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列;生成单元,用于通过建立所述第一音效特征序列中的各第一音效特征点和所述第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示所述第一音效特征序列和所述第二音效特征序列之间的差异情况的规整路径图;输出单元,用于将所述规整路径图作为测试结果输出。
8.在本技术的一些实施例中,基于前述方案,所述输出单元配置为:确定所述第一音效特征序列和所述第二音效特征序列之间的差异值;若所述差异值位于预定差异值区间内,则将所述规整路径图作为测试结果输出。
9.在本技术的一些实施例中,基于前述方案,所述提取单元配置为:将所述第一音效数据和所述第二音效数据的采样率重置为相同的采样率,得到重置后第一音效数据和重置
后第二音效数据;分别对所述重置后第一音效数据和所述重置后第二音效数据进行去静音处理,得到处理后第一音效数据和处理后第二音效数据;从所述处理后第一音效数据提取出第一音效特征序列,并从所述处理后第二音效数据提取出第二音效特征序列。
10.在本技术的一些实施例中,基于前述方案,所述获取单元配置为:当第一版本的软件在运行指定程序逻辑时,对所述第一版本的软件进行录制,得到第一音视频数据;当第二版本的软件在运行所述指定程序逻辑时,对所述第二版本的软件进行录制,得到第二音视频数据;从所述第一音视频数据中提取出第一音效数据,并从所述第二音视频数据中提取出第二音效数据。
11.在本技术的一些实施例中,基于前述方案,所述软件为游戏软件,所述指定程序逻辑为目标游戏回放切片文件。
12.在本技术的一些实施例中,基于前述方案,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,所述获取单元还用于:通过对游戏回放文件按照切片单位进行切片操作,得到至少一个游戏回放切片文件,所述切片单位对应着同一游戏角色,所述至少一个游戏回放切片文件包括所述目标游戏回放切片文件。
13.在本技术的一些实施例中,基于前述方案,所述第一音视频数据是在第一版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,所述第二音视频数据是在第二版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,所述获取单元配置为:将所述第一音视频数据拆分为多个第一音视频回放文件,并将所述第二音视频数据拆分为多个第二音视频回放文件;从所述多个第一音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第一音视频回放文件,并从所述多个第二音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第二音视频回放文件;从所述目标第一音视频回放文件中提取出第一音效数据,并从所述目标第二音视频回放文件中提取出第二音效数据。
14.在本技术的一些实施例中,基于前述方案,所述软件为游戏软件,所述指定程序逻辑为游戏软件中触发的指定音效事件。
15.在本技术的一些实施例中,基于前述方案,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,所述获取单元还用于:将背景音效设置为静音,得到设置后背景音效;初始化目标随机种子数据;通过在第一版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第一版本的软件中运行所述指定程序逻辑;通过在第二版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第二版本的软件中运行所述指定程序逻辑。
16.根据本技术实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的软件音效的测试方法。
17.根据本技术实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的软件音效的测试方法。
18.根据本技术实施例的一个方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器
从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行如上述实施例中所述的软件音效的测试方法。
19.在本技术的一些实施例所提供的技术方案中,通过在第一版本的软件中运行指定程序逻辑,得到第一音效数据;还通过在第二版本的软件中运行该指定程序逻辑,得到第二音效数据。然后,分别从两个音效数据中提取出相应的音效特征序列,进而通过建立两个音效特征序列中音效特征点在时间上的对应关系,来生成并输出规整路径图。因此,本技术实施例的方案实现了对软件音效的自动化测试,显著提高了测试效率,降低了测试成本;同时,通过输出规整路径图的方式得到测试结果,不依赖于人工,实现了对测试结果的量化,保证了软件音效测试的准确性。
20.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
21.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
22.图1示出了相关技术中提升机故障诊断的原理示意图;
23.图2示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图;
24.图3示出了根据本技术的一个实施例的软件音效的测试方法的流程图;
25.图4示出了根据本技术的一个实施例的图3实施例中步骤310的细节的流程图;
26.图5示出了根据本技术的一个实施例的系统架构框图;
27.图6示出了根据本技术的一个实施例的从第一音视频数据和第二音视频数据中分别提取出第一音效数据和第二音效数据的流程图;
28.图7示出了根据本技术的一个实施例的在获取第一音效数据及第二音效数据之前步骤的流程图;
29.图8示出了根据本技术的一个实施例的从第一音效数据和第二音效数据分别提取出第一音效特征序列和第二音效特征序列的流程图;
30.图9示出了根据本技术的一个实施例的图3实施例中步骤340的细节的流程图;
31.图10示出了根据本技术的一个实施例的根据游戏回放切片文件进行软件音效测试的流程示意图;
32.图11示出了根据本技术的一个实施例的根据音效事件进行软件音效测试的流程示意图;
33.图12示出了根据本技术的一个实施例的基于音效数据得到测试结果的流程示意图;
34.图13示出了根据本技术的一个实施例的软件音效的测试装置的框图;
35.图14示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
36.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
37.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
38.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
39.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
40.很多软件具备音效功能。然而,随着软件版本的迭代和更新,即使只对软件其他部分进行修改,并未对软件的音效部分进行修改,也可能导致软件音效播放错误甚至出现音效丢失的情况。因此,有必要对软件音效进行测试以确保软件的音效功能是正常的。目前,在相关技术中,对软件音效进行测试还是采用传统的人工测试方案,不仅效率低、成本高,而且容易出现测试误差。
41.图1示出了相关技术中提升机故障诊断的原理示意图。请参见图1所示,在相关技术中,对提升机故障诊断的具体过程如下:首先,获取提升机运行时的音频信号;然后,进行音频信号预处理,得到处理结果,这里的预处理操作主要包括预加重、分帧、门限端点检测、加窗;接着,通过短时傅里叶变换、mel滤波器滤波以及离散余弦变换,进行音频信号mfcc特征参数提取;接下来,利用音频信号mfcc特征参数对构建的cnn模型进行cnn模型训练;最后,基于训练好的cnn模型进行提升机故障诊断。
42.因此,图1所示的相关技术的方案不仅未用于对软件音效的测试,而且需要构建cnn模型,并进行cnn模型的训练,成本较高。
43.为此,本技术首先提供了一种软件音效的测试方法。基于本技术实施例提供的软件音效的测试方法可以克服上述缺陷,不仅能够实现对软件音效的自动化测试、提高测试效率、降低测试成本,更能够保证软件音效测试的准确性。
44.图2示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图。
45.如图2所示,系统架构200中包括用户终端201、云真机平台202以及云端203,用户终端201与云真机平台202之间以及云端203与云真机平台202之间均通过网络建立通信连接。云端203可以是本技术实施例中的执行主体。当本技术实施例提供的软件音效的测试方法应用于图1所示的系统架构中时,一个过程可以是这样的:首先,用户终端201通过web页面访问云真机平台202,进行程序逻辑的管理,并选择需要测试的指定程序逻辑和需要参与测试比对的两个版本的软件包;接着,云真机平台202根据选择的指定程序逻辑和两个软件包,读取相应的软件资源数据,分别在两个软件包执行该指定程序逻辑,同时分别进行音视
频的录制,得到第一音视频数据和第二音视频数据,然后将第一音视频数据和第二音视频数据传输至云端203;接着,云端203将从第一音视频数据中提取出第一音效数据,从第二音视频数据中提取出第二音效数据,并分别从第一音效数据和第二音效数据提取出第一音效特征序列和第二音效特征序列,根据第一音效特征序列和第二音效特征序列生成并存储规整路径图;最后,云端203将规整路径图作为测试结果返回给云真机平台202,并由云真机平台202将测试结果返回给用户终端201。
46.在本技术的一个实施例中,两个版本的软件包均为游戏软件包,程序逻辑为游戏回放切片文件或者音效事件。
47.在本技术的一个实施例中,云端203还会计算第一音效特征序列和所述第二音效特征序列之间的差异值,并在该差异值位于预定差异值区间内的情况下,将规整路径图作为测试结果返回给云真机平台202。
48.应该理解,图2中用户终端、云真机平台以及云端的架构形式仅仅是示意性的。根据实现需要,可以具有任意数目的用户终端,云真机平台202和云端203均可以是由多个服务器组成的服务器集群等。
49.需要说明的是,图2示出的仅为本技术的一个实施例,虽然在图2实施例中,用户终端为笔记本电脑,而执行主体为云端,但在本技术的其他实施例中,无论是用户终端还是执行主体,均可以是各种类型的终端设备,例如可以包括但不限于服务器、手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等;虽然在图2实施例中,云真机平台和云端是分别单独设置的,但在本技术的其他实施例中,云真机平台还可以是云端的一部分;虽然在图2实施例中,云端在生成规整路径图之后,先将规整路径图作为测试结果返回给云真机平台,再由云真机平台返回给用户终端,但在本技术的其他实施例中,云端可以直接将生成的规整路径图发送至用户终端,即用户终端可以与云端直接进行交互。本技术实施例对此不作任何限定,本技术的保护范围也不应因此而受到任何限制。
50.并且,易于理解,本技术实施例所提供的软件音效的测试方法一般由服务器执行,相应地,软件音效的测试装置一般设置于服务器中。但是,在本技术的其它实施例中,用户终端也可以与服务器具有相似的功能,从而执行本技术实施例所提供的软件音效的测试方案。
51.可以通过终端与服务器的交互来实现本技术实施例的方案。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
52.以下对本技术实施例的技术方案的实现细节进行详细阐述:
53.图3示出了根据本技术的一个实施例的软件音效的测试方法的流程图,该软件音效的测试方法可以由各种能够计算和处理的设备来执行,比如可以是用户终端或云服务器,用户终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。本技术实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
请参照图3所示,该软件音效的测试方法至少包括以下步骤:
54.在步骤310中,获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行指定程序逻辑时产生的第二音效数据。
55.第一版本的软件和第二版本的软件是同一软件的不同版本。例如,第二版本的软件可以是通过对第一版本的软件进行版本更新后而得到的软件,具体来说,第一版本的软件可以是上周向用户开放下载的软件,第二版本的软件可以本周即将向用户开放下载的软件。这里的软件可以是任何具备音效功能的软件,可以是桌面端的软件,也可以是移动端的软件。软件可以运行于windows、linux、ios、android等各种操作系统上。
56.通过在第一版本的软件和第二版本的软件中运行相同的指定程序逻辑,可以分别在第一版本的软件和第二版本的软件中产生相应的音效数据。
57.在本技术的一个实施例中,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行指定程序逻辑时产生的第二音效数据之前,该软件音效的测试方法还包括:获取选择的软件版本信息,所述软件版本信息包括第一版本和第二版本。
58.在本技术实施例中,用户需要先选择进行对比测试的软件版本信息,才能够确定进行测试的对象。
59.在本技术的一个实施例中,获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行指定程序逻辑时产生的第二音效数据,包括:当第一版本的软件在运行指定程序逻辑时,对第一版本的软件进行录制,得到第一音效数据;当第二版本的软件在运行指定程序逻辑时,对第二版本的软件进行录制,得到第二音效数据。
60.在本技术实施例中,音效数据是通过在软件中运行指定程序逻辑时对软件进行录制而直接得到的。
61.图4示出了根据本技术的一个实施例的图3实施例中步骤310的细节的流程图。请参见图4所示,步骤310具体可以包括以下步骤:
62.在步骤311中,当第一版本的软件在运行指定程序逻辑时,对第一版本的软件进行录制,得到第一音视频数据。
63.软件可以运行在智能手机上,通过在智能手机的内部对软件进行录制,能够得到相应的音视频数据。第一音视频数据可以以视频文件的方式保存。
64.在步骤312中,当第二版本的软件在运行指定程序逻辑时,对第二版本的软件进行录制,得到第二音视频数据。
65.第二音视频数据和第一音视频数据可以是同样格式的视频文件。
66.在步骤313中,从第一音视频数据中提取出第一音效数据,并从第二音视频数据中提取出第二音效数据。
67.第一音视频数据和第二音视频数据中均包括视频数据和音效数据,所以可以从第一音视频数据和第二音视频数据中提取出相应的音效数据。
68.在本技术实施例中,第一音效数据和第二音效数据是在软件中运行指定程序逻辑时通过对软件进行录制得到的音视频数据中提取出来的,录制得到的音视频数据可以保存起来,以便在通过进行音效测试发现问题后,可以对相应的音视频数据进行分析,以帮助分析问题原因和解决问题。
69.在本技术的一个实施例中,软件为游戏软件,指定程序逻辑为目标游戏回放切片文件。
70.绝大部分游戏软件具备音效功能,这里的游戏可以是moba(multiplayer online battle arena,多人在线战术竞技)游戏,具体可以是手机游戏。目标游戏回放切片文件是通过对游戏回放文件进行切片而得到的。游戏回放文件是记录着游戏的操作逻辑,因此,在游戏软件运行目标游戏回放切片文件是在游戏中重新执行相应的逻辑,类似于录像机制。
71.游戏回放文件的格式可以.abc,所以可以将游戏回放文件称为abc回放文件,游戏回放切片文件可以称为abc回放切片。
72.在本技术的一个实施例中,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行指定程序逻辑时产生的第二音效数据之前,该软件音效的测试方法还包括:通过对游戏回放文件按照切片单位进行切片操作,得到至少一个游戏回放切片文件,切片单位对应着同一游戏角色,至少一个游戏回放切片文件包括目标游戏回放切片文件。
73.具体地,在moba游戏中,一个游戏角色即为一个英雄,对游戏回放文件按照对应着同一游戏角色的切片单位进行切片操作,即为以游戏角色为单位对游戏回放文件进行分割,使得获得的每一游戏回放切片文件对应着同一游戏角色。
74.在本技术的一个实施例中,切片单位对应着同一角色皮肤和同一角色技能。
75.在moba游戏中,很多英雄对应着一个或多个皮肤,每一英雄还具有多个英雄技能,同一个英雄在使用不同皮肤和不同的英雄技能时,可能会产生不同的音效。
76.在本技术实施例中,对游戏回放文件按照切片单位进行切片操作得到的每一游戏回放切片文件对应着同一角色皮肤和同一角色技能,使得在游戏软件中执行目标游戏回放切片文件时,可以针对某一个游戏角色在使用某一角色皮肤和某一角色技能时的音效进行测试,使得软件音效测试的过程更加精细化,能够精准地实现问题定位。
77.图6示出了根据本技术的一个实施例的从第一音视频数据和第二音视频数据中分别提取出第一音效数据和第二音效数据的流程图。在图6实施例中,第一音视频数据是在第一版本的软件中运行至少一个游戏回放切片文件时录制得到的,第二音视频数据是在第二版本的软件中运行至少一个游戏回放切片文件时录制得到的。请参见图6所示,具体可以包括以下步骤:
78.在步骤610中,将第一音视频数据拆分为多个第一音视频回放文件,并将第二音视频数据拆分为多个第二音视频回放文件。
79.每一个第一音视频回放文件和每一个第二音视频回放文件均对应着一个游戏回放切片文件。
80.在步骤620中,从多个第一音视频回放文件中获取与目标游戏回放切片文件对应的目标第一音视频回放文件,并从多个第二音视频回放文件中获取与目标游戏回放切片文件对应的目标第二音视频回放文件。
81.目标游戏回放切片文件是选择用来进行测试的,因此需要获取与目标游戏回放切片文件对应的目标第一音视频回放文件和目标第二音视频回放文件。
82.在步骤630中,从目标第一音视频回放文件中提取出第一音效数据,并从目标第二音视频回放文件中提取出第二音效数据。
83.目标第一音视频回放文件和目标第二音视频回放文件中包含了与目标游戏回放切片文件对应的音效数据,因此需要提取出相应的音效数据以用于测试。
84.本技术实施例中,针对执行的多个游戏回放切片文件被录制为同一个音视频数据的情形,通过将音视频数据拆分为多个单独的音视频回放文件,实现了对单一音视频回放文件测试对比,避免测试时受到交叉影响,保证了测试的准确性。
85.在本技术的一个实施例中,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行指定程序逻辑时产生的第二音效数据之前,该软件音效的测试方法还包括:获取选择的指定程序逻辑。
86.软件中通常包含很多程序逻辑,因此需要选择指定程序逻辑来进行测试。当指定程序逻辑为目标游戏回放切片文件时,目标游戏回放切片文件可以是通过从多个游戏回放切片文件中选择出来的。
87.指定程序逻辑和软件版本信息可以是同时选择的。
88.图5示出了根据本技术的一个实施例的系统架构框图。请参见图5所示,该系统架构包括web访问端510、云真机平台520以及云服务器530,其中,在web访问端510中可以执行各种web页面的操作,比如,可以进行abc回放管理和abc回放选择。通过进行abc回放管理,可以实现对abc回放切片的管理,例如可以实现对abc回放切片的添加、删除、更新等功能。通过进行abc回放选择,可以选择需要在软件中执行的abc回放切片。
89.在本技术的一个实施例中,软件为游戏软件,指定程序逻辑为游戏软件中触发的指定音效事件。
90.具体地,游戏软件中可以包括游戏和音频引擎,音频引擎可以是wwise。游戏软件中的游戏会向音频引擎发送game call(游戏调用),进而触发音频引擎中相应的event,event即为音效事件。通过event可以用来触发或停止声音,或者修改声音属性。
91.因此,本技术实施例提供了通过在软件中运行指定音效事件或目标游戏回放切片文件的方式进行音效测试。
92.本技术实施例中,在软件中运行指定音效事件或目标游戏回放切片文件都是通过运行自动化脚本的方式驱动的。可以根据软件版本的不同,选择不同的软件运行方式进行测试;比如,可以在每周更新的软件版本中通过运行指定音效事件进行测试,在需要更长周期(如数月)才更新一次的软件版本中,分别在软件中运行指定音效事件和目标游戏回放切片文件,分别进行测试,以提高测试的准确性。
93.请参见图5所示,在web访问端510中还可以执行event管理和event选择操作,通过执行event管理操作,可以进行对event的更新、删除等;通过执行event选择操作,可以选择需要在软件中执行的event,在选择event时,还可以通过在web访问端510中执行对比管理选择需要参与对比测试的软件版本信息,当软件为游戏软件时,软件版本信息是游戏版本包。通过在web访问端510中执行对比管理,还可以使得第一版本的软件和第二版本的软件通过执行相同类型的指定程序逻辑进行测试,即第一版本的软件在运行abc回放切片时产生的第一音效数据只会被用来与第二版本的软件在运行该abc回放切片时产生的第二音效数据进行对比测试,第一版本的软件在运行event时产生的第一音效数据只会被用来与第二版本的软件在运行该event时产生的第二音效数据进行对比测试,不会出现数据对比错误。
94.选择的event和abc回放切片会存入云真机平台520的数据库中,由云真机平台520从数据库中取出并执行。云真机平台520是利用多台移动终端(如智能手机)而搭建的平台,可以用于对移动平台的软件进行运行和测试。云真机平台520可以通过流水线模式,驱动获取运行event或abc回放切片时需要执行的用例场景数据,然后运行event或abc回放切片,同时进行内录音视频,将录制得到的音视频数据传输至云服务器530。云服务器530可以进行音视频预处理,可以将音视频数据拆分为音视频回放文件,并从音视频回放文件中导出音效数据。
95.图7示出了根据本技术的一个实施例的在获取第一音效数据及第二音效数据之前步骤的流程图。如图7所示,可以包括以下步骤:
96.在步骤710中,将背景音效设置为静音,得到设置后背景音效。
97.通过将游戏的背景音效设置为静音。
98.在步骤720中,初始化目标随机种子数据。
99.游戏角色可以根据目标随机种子数据的不同而发出不同的音效。本步骤设置固定的目标随机种子数据。
100.在步骤730中,通过在第一版本的软件中根据目标随机种子数据和设置后背景音效调用指定音效事件,在第一版本的软件中运行指定程序逻辑。
101.在步骤740中,通过在第二版本的软件中根据目标随机种子数据和设置后背景音效调用指定音效事件,在第二版本的软件中运行指定程序逻辑。
102.在本技术实施例中,通过将背景音效设置为静音,避免了其他音效的干扰,通过初始化目标随机种子数据,并根据设置的目标随机种子数据调用指定音效事件,避免了随机种子数据导致的测试误差。
103.请继续参见图3,在步骤320中,从第一音效数据提取出第一音效特征序列,并从第二音效数据提取出第二音效特征序列。
104.第一音效特征序列和第二音效特征序列均包括与多个时刻分别对应的多个音效特征点。音效特征点可以采用梅尔倒谱频率系数(mfcc,mel-frequency cepstral coefficients)。mel频率是基于人耳听觉特性提出来的,它与hz频率成非线性对应关系。梅尔倒谱频率系数则是利用它们之间的这种关系,计算得到的hz频谱特征。
105.图8示出了根据本技术的一个实施例的从第一音效数据和第二音效数据分别提取出第一音效特征序列和第二音效特征序列的流程图。请参见图8所示,具体可以包括以下步骤:
106.在步骤810中,将第一音效数据和第二音效数据的采样率重置为相同的采样率,得到重置后第一音效数据和重置后第二音效数据。
107.有些情况下,第一音效数据和第二音效数据不同,为了保证测试的准确性,需要将第一音效数据和第二音效数据的采样率重置为相同的采样率。
108.在本技术的一个实施例中,将第一音效数据和第二音效数据的采样率重置为相同的采样率,得到重置后第一音效数据和重置后第二音效数据,包括:分别获取第一音效数据的第一采样率和第二音效数据的第二采样率;确定第一采样率和第二采样率中的最大采样率;将第一音效数据和第二音效数据中采样率不为最大采样率的音效数据的采样率重置为最大采样率。
109.本技术实施例中,可以使第一音效数据和第二音效数据中的一个音效数据保持不变,将另一音效数据的采样率置为最大采样率,可以只重置一个音效数据的采样率,在保证两者具有相同的采样率的同时,避免了因采样率重置而带来的误差。
110.在步骤820中,分别对重置后第一音效数据和重置后第二音效数据进行去静音处理,得到处理后第一音效数据和处理后第二音效数据。
111.去静音处理是将音效数据中的静音部分去除,例如可以将首尾部分的静音去除。通过进行去静音处理,提高了测试效率。
112.在步骤830中,从处理后第一音效数据提取出第一音效特征序列,并从处理后第二音效数据提取出第二音效特征序列。
113.在本技术实施例中,通过对第一音效数据和第二音效数据分别进行去静音处理和采样率重置,不仅提高了测试效率,还保证了测试的准确性。
114.在步骤330中,通过建立第一音效特征序列中的各第一音效特征点和第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示第一音效特征序列和第二音效特征序列之间的差异情况的规整路径图。
115.通过建立第一音效特征序列中的各第一音效特征点和第二音效特征序列中的各第二音效特征点在时间上的对应关系,可以使得某一音效特征序列中在某一时刻上的音效特征点与另一音效特征序列中在多个连续时刻上的音效特征点相对应。生成的规整路径图中,第一音效特征序列在各时刻的第一音效特征点可以由横轴表示,第二音效特征序列在各时刻的第二音效特征点可以由纵轴表示,规整路径图中每一个元素的值均代表相应的第一音效特征点和第二音效特征点之间的距离。
116.规整路径图包括规整路径。在规整路径图中,规整路径是起点到终点的所有路径中经过元素的值之和最小的路径,即,规整路径是距离和最小的路径。规整路径图中的起点即起始元素,该起始元素的值是第一音效特征序列中位于起始时刻的第一音效特征点和第二音效特征序列中位于起始时刻的第二音效特征点之间的距离;规整路径图中的终点即终止元素,该终止元素的值是第一音效特征序列中位于终止时刻的第一音效特征点和第二音效特征序列中位于终止时刻的第二音效特征点之间的距离。
117.在步骤340中,将规整路径图作为测试结果输出。
118.图9示出了根据本技术的一个实施例的图3实施例中步骤340的细节的流程图。请参见图9所示,步骤340具体可以包括以下步骤:
119.在步骤341中,确定第一音效特征序列和第二音效特征序列之间的差异值。
120.第一音效特征序列和第二音效特征序列之间的差异值可以是在生成规整路径图的同时计算得到的。差异值可以是规整路径图中规整路径上的距离之和,也可以通过计算得到的第一音效特征序列和第二音效特征序列之间的相似度。
121.规整路径上的距离之和可以通过如下公式计算得到:
122.d(i,j)=dist(i,j)+min[d(i-1,j),d(i,j-1),d(i-1,j-1)],
[0123]
其中,dist(i,j)为位置位于(i,j)处的元素的值,d(i,j)为从起点至(i,j)位置处的元素的值之和,d(i-1,j)为从起点至(i-1,j)位置处的元素的值之和,d(i,j-1)为从起点至(i,j-1)位置处的元素的值之和,d(i-1,j-1)为从起点至(i-1,j-1)位置处的元素的值之和,min用于求取d(i-1,j)、d(i,j-1)和d(i-1,j-1)中的最小值。
[0124]
在步骤342中,若差异值位于预定差异值区间内,则将规整路径图作为测试结果输出。
[0125]
预定差异值区间比如可以是大于1的区间。当差异值不位于预定差异值区间内时,说明第一音效特征序列和第二音效特征序列之间的差异很小,人耳也难以区分相应音效数据之间的差异,此时可以认为测试通过,不需要将规整路径图输出。
[0126]
请继续参见图5所示,在进行音视频预处理之后,云服务器530进行音效差异计算,可以得到差异值和规整路径图,在此基础上,可以将差异值、规整路径图及与音效数据相关的时长等信息存入云服务器530的数据库中,供后续回溯时调取使用。图5中的web访问端510中还会执行结果审核,具体地,只有第一音效特征序列和第二音效特征序列之间的差异值大于1时,web访问端510中接收到规整路径图,审核人员通过观察分析规整路径图,能够进一步确认音效差异原因。
[0127]
图10示出了根据本技术的一个实施例的根据游戏回放切片文件进行软件音效测试的流程示意图。请参见图10所示,可以包括以下步骤:
[0128]
步骤1001,动态插桩音效代码。
[0129]
以脚本的方式动态修改游戏软件的程序代码,添加音效相关的初始化和日志记录功能。本步骤主要是保证音效随机种子数据的一致性和代码逻辑的一致性与保证abc回放文件各版本的兼容。通过日志功能可以记录测试所执行的游戏角色的语言文本等。
[0130]
步骤1002,打档及wetest自动化驱动。
[0131]
重新进行游戏软件的打包,通过wetest平台这一云真机平台自动化驱动测试。
[0132]
步骤1003,abc切片回放。
[0133]
在游戏软件中执行abc回放切片,本步骤指向的图中显示的内容即为王者荣耀这一游戏中的abc回放切片,在执行abc回放切片时,会自动执行相应的游戏逻辑,如步骤1003和步骤1004之间的箭头指向的图片所示。
[0134]
步骤1004,录屏。
[0135]
通过手机内录的方式进行视频录制,能够排除环境音的干扰。
[0136]
步骤1005,按帧切割视频。
[0137]
当游戏软件运行的多个abc回放切片时保存为一个音视频数据,需要对其拆分为单个abc回放切片对应的音视频回放文件;也可以通过在每当运行一个abc回放切片时录制并保存为一个音视频数据来跳过该步骤。本步骤指向的图片示出了通过对v54版本的游戏软件进行录制后切割得到的视频文件以及通过对v61版本的游戏软件进行录制后切割得到的视频文件。
[0138]
步骤1006,按编号命名切割文件。
[0139]
步骤1005指向的文件是按照版本和切割顺序设置切割得到的文件的命名。
[0140]
步骤1007,导出音效文件。
[0141]
从各视频文件导出相应的音效文件。本步骤指向的图片即为导出的音效文件,其格式为.wav。
[0142]
步骤1008,版本间对比。
[0143]
对不同版本游戏产生的音效文件进行对比测试。
[0144]
步骤1009,生成规整路径图及其距离值。
[0145]
生成规整路径图及其距离值这一差异值。本步骤指向的图片中即为多个规整路径图,每个规整路径图的文件名称中位于dist之后的数值即为距离值,该距离值也是前述的距离之和。
[0146]
图10中最下方的附图即为规整路径图,规整路径图中白色的线即为规整路径。
[0147]
步骤1010,报表分析。
[0148]
将与生成距离值相关的数据存储在报表中,进行分析,确定是否需要人工审核。
[0149]
步骤1011,日志分析。
[0150]
通过记录的日志确定游戏角色发出音效所使用的语言文本,辅助人工审核测试结果。
[0151]
图11示出了根据本技术的一个实施例的根据音效事件进行软件音效测试的流程示意图。请参见图11所示,可以包括以下步骤:
[0152]
步骤1110,开始。
[0153]
步骤1120,wwise工程获取soundbanksinfo.xml。
[0154]
wwise工程即wwise音效引擎。soundbanksinfo.xml是wwise音效引擎中的全局配置文件,通过soundbanksinfo.xml可以获得游戏软件中有哪些event、event的时长信息以及event对应的英雄等,进而可以帮助实现event调用。
[0155]
步骤1130,遍历event调用aksoundengine.postevent。
[0156]
bank是wwise引擎的音效文件。通过调用aksoundengine.loadbank这一方法实现音效bank的加载,通过调用aksoundengine.unloadbank这一方法实现音效bank的卸载,通过调用aksoundengine.postevent实现event调用。在每次调用event之前,还可以额外进行如下的初始化操作:通过postevent(“mute_music”)调用将背景音效设置为静音,通过调用aksoundengine.setrandomseed初始化随机种子数据。
[0157]
步骤1140,采集音效。
[0158]
通过云真机的内录的方式,每执行一次步骤1130就采集一次音效数据,并将音效数据回传至云服务器。
[0159]
步骤1150,版本间对比。
[0160]
以相同的bank和event来对比不同游戏版本产生的音效数据。
[0161]
步骤1160,输出规整路径图及其距离值。
[0162]
根据音效数据生成并输出规整路径图和距离值,该距离值即为前述的距离之和。
[0163]
步骤1170,生成分析报告。
[0164]
根据规整路径图及其距离值等数据生成分析报告。
[0165]
步骤1180,结束。
[0166]
图12示出了根据本技术的一个实施例的基于音效数据得到测试结果的流程示意图。请参见图12所示,可以包括以下步骤:
[0167]
步骤1201,开始。
[0168]
步骤1202,加载音效数据x和y。
[0169]
读取音效数据x和y。
[0170]
步骤1203,获取音效数据x和y的采样率。
[0171]
分别确定音效数据x和y的实际采样率。
[0172]
步骤1204,将音效数据x和y重置为一致的采样率。
[0173]
可以将音效数据x和y中采样率较小的音效数据的采样率重置为另一采样率较大的音效数据的采样率。
[0174]
步骤1205,去掉首尾静音。
[0175]
去掉音效数据中的静音部分,例如去除首部和尾部的静音部分。
[0176]
步骤1206,计算音效数据x和y的梅尔频率倒谱系数mfccx和mfccy。
[0177]
计算音效数据x的梅尔频率倒谱系数mfccx和音效数据y的梅尔频率倒谱系数mfccy。
[0178]
步骤1207,计算mfccx和mfccy的差异值。
[0179]
可以通过计算相关系数或距离和的方式计算差异值。
[0180]
步骤1208,差异值判定。
[0181]
如果差异值大于1,则执行步骤1209。
[0182]
步骤1209,输出完整的规整路径。
[0183]
输出规整路径图,规整路径图中包含完整的规整路径,规整路径展示了两个音效数据的差异重叠情况。
[0184]
综上所述,根据本技术实施例提供的软件音效的测试方法,提供了一种对软件音效进行自动化对比测试的方案,显著提高了测试效率,降低了测试成本;同时,通过输出规整路径图的方式得到测试结果,不依赖于人工,实现了对测试结果的量化,保证了软件音效测试的准确性。
[0185]
以下介绍本技术的装置实施例,可以用于执行本技术上述实施例中的软件音效的测试方法。对于本技术装置实施例中未披露的细节,请参照本技术上述的软件音效的测试方法的实施例。
[0186]
图13示出了根据本技术的一个实施例的软件音效的测试装置的框图。
[0187]
参照图13所示,根据本技术的一个实施例的软件音效的测试装置1300,包括:获取单元1310、提取单元1320、生成单元1330以及输出单元1340。其中,获取单元1310用于获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据;提取单元1320用于从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列;生成单元1330用于通过建立所述第一音效特征序列中的各第一音效特征点和所述第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示所述第一音效特征序列和所述第二音效特征序列之间的差异情况的规整路径图;输出单元1340用于将所述规整路径图作为测试结果输出。
[0188]
在本技术的一些实施例中,基于前述方案,输出单元1340配置为:确定所述第一音效特征序列和所述第二音效特征序列之间的差异值;若所述差异值位于预定差异值区间内,则将所述规整路径图作为测试结果输出。
[0189]
在本技术的一些实施例中,基于前述方案,提取单元1320配置为:将所述第一音效数据和所述第二音效数据的采样率重置为相同的采样率,得到重置后第一音效数据和重置后第二音效数据;分别对所述重置后第一音效数据和所述重置后第二音效数据进行去静音处理,得到处理后第一音效数据和处理后第二音效数据;从所述处理后第一音效数据提取
出第一音效特征序列,并从所述处理后第二音效数据提取出第二音效特征序列。
[0190]
在本技术的一些实施例中,基于前述方案,获取单元1310配置为:当第一版本的软件在运行指定程序逻辑时,对所述第一版本的软件进行录制,得到第一音视频数据;当第二版本的软件在运行所述指定程序逻辑时,对所述第二版本的软件进行录制,得到第二音视频数据;从所述第一音视频数据中提取出第一音效数据,并从所述第二音视频数据中提取出第二音效数据。
[0191]
在本技术的一些实施例中,基于前述方案,所述软件为游戏软件,所述指定程序逻辑为目标游戏回放切片文件。
[0192]
在本技术的一些实施例中,基于前述方案,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,获取单元1310还用于:通过对游戏回放文件按照切片单位进行切片操作,得到至少一个游戏回放切片文件,所述切片单位对应着同一游戏角色,所述至少一个游戏回放切片文件包括所述目标游戏回放切片文件。
[0193]
在本技术的一些实施例中,基于前述方案,所述第一音视频数据是在第一版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,所述第二音视频数据是在第二版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,获取单元1310配置为:将所述第一音视频数据拆分为多个第一音视频回放文件,并将所述第二音视频数据拆分为多个第二音视频回放文件;从所述多个第一音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第一音视频回放文件,并从所述多个第二音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第二音视频回放文件;从所述目标第一音视频回放文件中提取出第一音效数据,并从所述目标第二音视频回放文件中提取出第二音效数据。
[0194]
在本技术的一些实施例中,基于前述方案,所述软件为游戏软件,所述指定程序逻辑为游戏软件中触发的指定音效事件。
[0195]
在本技术的一些实施例中,基于前述方案,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,获取单元1310还用于:将背景音效设置为静音,得到设置后背景音效;初始化目标随机种子数据;通过在第一版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第一版本的软件中运行所述指定程序逻辑;通过在第二版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第二版本的软件中运行所述指定程序逻辑。
[0196]
图14示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
[0197]
需要说明的是,图14示出的电子设备的计算机系统1400仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0198]
如图14所示,计算机系统1400包括中央处理单元(central processing unit,cpu)1401,其可以根据存储在只读存储器(read-only memory,rom)1402中的程序或者从存储部分1408加载到随机访问存储器(random access memory,ram)1403中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 1403中,还存储有系统操作所需的各种程序和数据。cpu 1401、rom 1402以及ram 1403通过总线1404彼此相连。输入/输出(input/output,i/o)接口1405也连接至总线1404。
[0199]
以下部件连接至i/o接口1405:包括键盘、鼠标等的输入部分1406;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1407;包括硬盘等的存储部分1408;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1409。通信部分1409经由诸如因特网的网络执行通信处理。驱动器1410也根据需要连接至i/o接口1405。可拆卸介质1411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1410上,以便于从其上读出的计算机程序根据需要被安装入存储部分1408。
[0200]
特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1409从网络上被下载和安装,和/或从可拆卸介质1411被安装。在该计算机程序被中央处理单元(cpu)1401执行时,执行本技术的系统中限定的各种功能。
[0201]
需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0202]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0203]
描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬
件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0204]
作为一方面,本技术还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0205]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0206]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
[0207]
可以理解的是,在本技术的具体实施方式中,涉及到与音视频处理相关的数据,当本技术以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0208]
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
[0209]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
技术特征:
1.一种软件音效的测试方法,其特征在于,所述方法包括:获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据;从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列;通过建立所述第一音效特征序列中的各第一音效特征点和所述第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示所述第一音效特征序列和所述第二音效特征序列之间的差异情况的规整路径图;将所述规整路径图作为测试结果输出。2.根据权利要求1所述的软件音效的测试方法,其特征在于,所述将所述规整路径图作为测试结果输出,包括:确定所述第一音效特征序列和所述第二音效特征序列之间的差异值;若所述差异值位于预定差异值区间内,则将所述规整路径图作为测试结果输出。3.根据权利要求1所述的软件音效的测试方法,其特征在于,所述从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列,包括:将所述第一音效数据和所述第二音效数据的采样率重置为相同的采样率,得到重置后第一音效数据和重置后第二音效数据;分别对所述重置后第一音效数据和所述重置后第二音效数据进行去静音处理,得到处理后第一音效数据和处理后第二音效数据;从所述处理后第一音效数据提取出第一音效特征序列,并从所述处理后第二音效数据提取出第二音效特征序列。4.根据权利要求1所述的软件音效的测试方法,其特征在于,所述获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据,包括:当第一版本的软件在运行指定程序逻辑时,对所述第一版本的软件进行录制,得到第一音视频数据;当第二版本的软件在运行所述指定程序逻辑时,对所述第二版本的软件进行录制,得到第二音视频数据;从所述第一音视频数据中提取出第一音效数据,并从所述第二音视频数据中提取出第二音效数据。5.根据权利要求4所述的软件音效的测试方法,其特征在于,所述软件为游戏软件,所述指定程序逻辑为目标游戏回放切片文件。6.根据权利要求5所述的软件音效的测试方法,其特征在于,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,所述方法还包括:通过对游戏回放文件按照切片单位进行切片操作,得到至少一个游戏回放切片文件,所述切片单位对应着同一游戏角色,所述至少一个游戏回放切片文件包括所述目标游戏回放切片文件。7.根据权利要求6所述的软件音效的测试方法,其特征在于,所述第一音视频数据是在
第一版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,所述第二音视频数据是在第二版本的软件中运行所述至少一个游戏回放切片文件时录制得到的,所述从所述第一音视频数据中提取出第一音效数据,并从所述第二音视频数据中提取出第二音效数据,包括:将所述第一音视频数据拆分为多个第一音视频回放文件,并将所述第二音视频数据拆分为多个第二音视频回放文件;从所述多个第一音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第一音视频回放文件,并从所述多个第二音视频回放文件中获取与所述目标游戏回放切片文件对应的目标第二音视频回放文件;从所述目标第一音视频回放文件中提取出第一音效数据,并从所述目标第二音视频回放文件中提取出第二音效数据。8.根据权利要求1-4任意一项所述的软件音效的测试方法,其特征在于,所述软件为游戏软件,所述指定程序逻辑为游戏软件中触发的指定音效事件。9.根据权利要求8所述的软件音效的测试方法,其特征在于,在获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据之前,所述方法还包括:将背景音效设置为静音,得到设置后背景音效;初始化目标随机种子数据;通过在第一版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第一版本的软件中运行所述指定程序逻辑;通过在第二版本的软件中根据所述目标随机种子数据和所述设置后背景音效调用所述指定音效事件,在所述第二版本的软件中运行所述指定程序逻辑。10.一种软件音效的测试装置,其特征在于,所述装置包括:获取单元,用于获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的所述软件在运行所述指定程序逻辑时产生的第二音效数据;提取单元,用于从所述第一音效数据提取出第一音效特征序列,并从所述第二音效数据提取出第二音效特征序列;生成单元,用于通过建立所述第一音效特征序列中的各第一音效特征点和所述第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示所述第一音效特征序列和所述第二音效特征序列之间的差异情况的规整路径图;输出单元,用于将所述规整路径图作为测试结果输出。
技术总结
本申请的实施例提供了一种软件音效的测试方法及相关装置,该方法包括:获取第一版本的软件在运行指定程序逻辑时产生的第一音效数据及第二版本的软件在运行该指定程序逻辑时产生的第二音效数据;从第一音效数据提取出第一音效特征序列,并从第二音效数据提取出第二音效特征序列;通过建立第一音效特征序列中的各第一音效特征点和第二音效特征序列中的各第二音效特征点在时间上的对应关系,生成用于展示第一音效特征序列和第二音效特征序列之间的差异情况的规整路径图;将规整路径图作为测试结果输出。本申请实施例实现了对软件音效的自动化测试,提高了测试效率和准确性。本申请实施例可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景。辅助驾驶等各种场景。辅助驾驶等各种场景。
技术研发人员:王清平 陈小雪
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2022.03.25
技术公布日:2023/10/15
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
