CN111338971B - 应用测试方法、装置、电子设备及存储介质 - Google Patents

应用测试方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111338971B
CN111338971B CN202010230178.0A CN202010230178A CN111338971B CN 111338971 B CN111338971 B CN 111338971B CN 202010230178 A CN202010230178 A CN 202010230178A CN 111338971 B CN111338971 B CN 111338971B
Authority
CN
China
Prior art keywords
test
strategy
application
policy
factor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010230178.0A
Other languages
English (en)
Other versions
CN111338971A (zh
Inventor
杨水石
胡智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202010230178.0A priority Critical patent/CN111338971B/zh
Publication of CN111338971A publication Critical patent/CN111338971A/zh
Application granted granted Critical
Publication of CN111338971B publication Critical patent/CN111338971B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开关于一种应用测试方法、装置、电子设备及存储介质,所述方法包括:被触发测试目标应用时,根据客户端信息获取测试参数;根据测试参数,确定对应的应用测试策略;根据应用测试策略,测试目标应用。通过上述方法,客户端不再需要依赖服务器作为网络中心下发测试策略,可以自行确定应用测试策略自主执行测试,实时性较高,同时避免从服务器获取应用测试策略带来的带宽资源耗费以及传输处理压力;尤其可以避免服务器故障或者网络状态受限情况下对测试的影响。

Description

应用测试方法、装置、电子设备及存储介质
技术领域
本公开涉及互联网技术领域,尤其涉及一种应用测试方法、装置、电子设备及存储介质。
背景技术
随着互联网时代的发展,客户端中的应用程序迭代更新频率越来越高。为了确保应用程序的功能或者设计达到最好的效果,可以对应用程序的功能或者设计进行AB测试。AB测试是指对相同的产品功能或设计,采取两个(A/B)或多个(A/B/N)不同的实现版本,在相同维度下,让访客群组(目标人群)随机应用这些不同的实现版本进行测试。然后,通过收集各群组用户的体验数据和业务数据,通过分析、评估确定最好的实现版本,正式采用该实现版本的功能或设计。
相关技术中,对应用程序的功能或者设计进行AB测试通常是预先将策略下发逻辑集中在服务器端。当用户打开应用的时候,客户端获取该客户端的唯一标识,并通过网络请求将其上传给服务器。服务器接收到请求后,根据预先制定的策略判断该客户端需要执行的策略并下发,从而使客户端能够执行对应的版本逻辑。使用上述技术方案,当发生网络状况不好或者配置需要生效的实时性较高等情况时,存在策略无法得到及时执行的问题。
发明内容
本公开提供一种应用测试方法、装置、电子设备及存储介质,以至少解决相关技术中策略无法得到及时执行的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种应用测试方法,应用于包括目标应用的客户端,包括:
被触发测试目标应用时,根据客户端信息获取测试参数;
根据测试参数,确定对应的应用测试策略;
根据应用测试策略,测试目标应用。
在其中一个实施例中,客户端信息中包括客户端标识、测试分组基数以及测试分组参数;根据客户端信息获取测试参数,包括:
根据客户端标识以及测试分组基数,获取测试策略因子;
根据测试策略因子以及测试分组参数,确定测试参数。
在其中一个实施例中,根据客户端标识以及测试分组基数,获取测试策略因子,包括:
对客户端标识进行转换处理,得到对应的标识数值;
根据测试分组基数,对标识数值进行求模处理,得到测试策略因子。
在其中一个实施例中,对客户端标识进行转换处理,得到对应的标识数值,包括:
采用哈希算法对客户端标识进行转换得到预设长度的字符串;
对预设长度的字符串进行转换处理,得到对应的标识数值。
在其中一个实施例中,测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个策略因子分组中包括预设数目的策略因子;根据测试策略因子以及测试分组参数,确定测试参数,包括:
根据测试策略因子,在多个策略因子分组中进行查找,确定包括与测试策略因子相同的策略因子的目标策略因子分组;
将目标策略因子分组具有的唯一分组标识,作为测试参数。
在其中一个实施例中,根据测试参数,确定对应的应用测试策略,包括:
从客户端预置的多组候选测试策略中,选取与测试参数对应的候选测试策略,确定为应用测试策略。
在其中一个实施例中,客户端支持预设策略数目的应用测试策略;客户端信息包括测试分组参数以及测试分组基数,测试分组基数包括预设策略数目的策略因子分组;所述方法还包括:
根据测试分组基数以及预设的概率因子,确定每组策略因子分组包括的策略因子数目;
随机生成策略因子数目的、小于测试分组基数的策略因子,构成策略因子分组,并设置策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
根据本公开实施例的第二方面,提供一种应用测试装置,应用于包括目标应用的客户端,包括:
测试参数获取模块,被配置为执行被触发测试目标应用时,根据客户端信息获取测试参数;
应用测试策略确定模块,被配置为执行根据测试参数,确定对应的应用测试策略;
测试模块,被配置为执行根据应用测试策略,测试目标应用。
在其中一个实施例中,客户端信息中包括客户端标识、测试分组基数以及测试分组参数;测试参数获取模块,包括:
测试策略因子确定单元,被配置为执行根据客户端标识以及测试分组基数,获取测试策略因子;
测试参数确定单元,被配置为执行根据测试策略因子以及测试分组参数,确定测试参数。
在其中一个实施例中,测试策略因子确定单元,包括:
标识数值生成单元,被配置为执行对客户端标识进行转换处理,得到对应的标识数值;
测试策略因子生成单元,被配置为执行根据测试分组基数,对标识数值进行求模处理,得到测试策略因子。
在其中一个实施例中,标识数值生成单元,被配置为执行采用哈希算法对客户端标识进行转换得到预设长度的字符串;对预设长度的字符串进行转换处理,得到对应的标识数值。
在其中一个实施例中,测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个策略因子分组中包括预设数目的策略因子;
测试参数确定单元,被配置为执行根据测试策略因子,在多个策略因子分组中进行查找,确定包括与测试策略因子相同的策略因子的目标策略因子分组;将目标策略因子分组具有的唯一分组标识,作为测试参数。
在其中一个实施例中,应用测试策略确定模块,被配置为执行从客户端预置的多组候选测试策略中,选取与测试参数对应的候选测试策略,确定为应用测试策略。
在其中一个实施例中,客户端支持预设策略数目的应用测试策略;客户端信息包括测试分组参数以及测试分组基数,测试分组基数包括预设策略数目的策略因子分组;所述装置还包括:
策略因子数目确定模块,被配置为执行根据测试分组基数以及预设的概率因子,确定每组策略因子分组包括的策略因子数目;
策略因子分组生成模块,被配置为执行随机生成策略因子数目的、小于测试分组基数的策略因子,构成策略因子分组,并设置策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现第一方面的任一项实施例中所述的应用测试方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行第一方面的任一项实施例中所述的应用测试方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行第一方面的任一项实施例中所述的应用测试方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
当被触发测试目标应用时,通过根据客户端信息确定测试目标应用的应用测试策略,以离线去中心化的方式,客户端不再需要依赖服务器作为网络中心下发测试策略,可以自行确定应用测试策略自主执行测试,实时性较高,同时避免从服务器获取应用测试策略带来的带宽资源耗费以及传输处理压力;尤其可以避免服务器故障或者网络状态受限情况下对测试的影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种应用测试方法的流程图。
图2是根据一示例性实施例示出的一种确定测试参数步骤的流程图。
图3是根据一示例性实施例示出的一种获取测试策略因子步骤的流程图。
图4是根据一示例性实施例示出的一种生成测试策略因子和分组标识步骤的流程图。
图5是根据一示例性实施例示出的一种应用测试方法的流程图。
图6是根据一示例性实施例示出的一种应用测试装置的框图。
图7是根据一示例性实施例示出的一种电子设备的内部结构图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开所提供的应用测试方法,应用于包括目标应用的客户端。目标应用即指定的应用程序。应用程序可以是指社交类应用程序等任何可以安装在客户端上的应用。当对目标应用的功能进行开发与迭代的时候,其设计方案往往是通过产品经理的个人经验和认知来决策,而其最终的使用效果需要发出版本交给用户使用以后才能确定。因此,通常会针对目标应用的一个功能设计两个或多个方案,例如,可以为同一个功能制定两个方案A和B(例如,两种界面),让一部分用户使用A方案,同时另一部分用户使用B方案。而每个方案可以有相应的应用测试策略,通过执行应用测试策略获得每个方案的测试数据,并基于所获取的测试数据选取最优的方案进行推广。本公开所提供的应用测试方法,预先将包含测试参数以及对应的应用测试策略的配置文件预埋在包括目标应用的客户端中。当被触发测试目标应用时,可以直接根据客户端信息获取测试参数,进而根据测试参数,确定对应的应用测试策略,从而不需要客户端与服务器交互请求获得。其中,客户端可以是但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
图1是根据一示例性实施例示出的一种应用测试方法的流程图。如图1所示,包括以下步骤。
在步骤S110中,被触发测试目标应用时,根据客户端信息获取测试参数。
其中,客户端信息是指能够从客户端获取的信息,例如,客户端标识、目标应用的用户账户标识、目标应用的配置文件中的相关参数等。测试参数是指预先配置的用于区分应用测试策略的参数,例如,测试参数可以是预先配置的编号、名称等。客户端中预存有客户端信息和测试参数的对应关系。具体地,当包含目标应用的客户端触发测试目标应用时,客户端获取客户端信息,根据客户端信息从预存的客户端信息和测试参数的对应关系中确定对应的测试参数。进一步地,为了提高应用测试的准确性和稳定性,应用测试通常针对一定条件下的访客群组展开,例如,相同维度(维度可以是地区、职业、性别等)下的访客群组。因此,在需要对目标应用进行应用测试时,客户端检测用户是否符合参与应用测试的条件,若符合,则触发测试目标应用。
在步骤S120中,根据测试参数,确定对应的应用测试策略。
其中,应用测试策略用于指示执行应用测试的方法。应用测试策略可以预先配置在目标应用的配置文件中。具体地,客户端中预存有应用测试策略和测试参数的对应关系,该对关系可以是一对一,即,一个测试参数对应一个应用测试策略;或者多对一的,即多个测试参数对应一个应用测试策略,在此不做限定。在客户端根据客户端信息获取测试参数后,客户端可以根据所得到的测试参数,从应用测试策略和测试参数的对应关系中确定客户端可执行的应用测试策略。
在步骤S130中,根据应用测试策略,测试目标应用。
具体地,由于应用测试策略提供用于应用测试的方法,因此,客户端在确定应用测试策略后,可以根据应用测试策略指示的测试方法对目标应用进行测试。进一步地,在设计应用测试时,还可以为应用测试配置采集数据的指标(例如,转化率、点击量等)。在应用测试过程中,通过采集不同方案的指标数据,并对所采集的指标数据进行统计和对比以判断不同方案的优劣,从而评估出最优的方案。另外,在设计应用测试时,还可以配置测试结束条件。当满足测试结束条件,例如,统计显著性达到一定阈值或以上并且维持一段时间,可以结束应用测试;反之,若显著性达在阈值以下,则可能需要延长测试时间;如果很长时间统计显著性不能达到阈值甚至更低,则需要决定是否中止试验。需要说明的是,本公开所提供的应用测试方法,同样适用于对HTML(Hyper Text Markup Language,超文本标记语言)、小程序等产品的功能进行开发与迭代时进行测试,在此不做过多阐述。
上述应用测试方法,当被触发测试目标应用时,根据客户端信息确定测试目标应用的应用测试策略,以离线去中心化的方式,客户端不再需要依赖服务器作为网络中心下发测试策略,可以自行确定应用测试策略自主执行测试,实时性较高,同时避免从服务器获取应用测试策略带来的带宽资源耗费以及传输处理压力;尤其可以避免服务器故障或者网络状态受限情况下对测试的影响。
在一示例性实施例中,在步骤S120中,根据测试参数,确定对应的应用测试策略,具体包括:从客户端预置的多组候选测试策略中,选取与测试参数对应的候选测试策略,确定为应用测试策略。
具体地,在一些场景中,通常需要为目标应用的功能或设计开发的多个方案进行多个方面的测试,例如,关于界面的测试,可以进行控件测试、兼容性测试、文档测试等。对于多个不同方面的测试,可以相应设置多组候选测试策略,并预先建立多组候选测试策略和测试参数的对应关系。例如,每个候选测试策略与一个测试参数对应。在根据客户端信息确定测试参数后,可以根据该测试参数,从候选测试策略和测试参数的对应关系中选取对应的候选测试策略,将该被选取的候选测试策略作为可以执行的应用测试策略。示例性地,为目标应用开发了两种使用界面,包括界面A和界面B。为界面A和界面B设置了多个候选测试策略(例如4个,分别为候选测试策略1/2/3/4)。若根据客户端信息获取的测试参数确定客户端需要执行候选测试策略1,则客户端根据该候选测试策略1对目标应用进行测试。本实施例中,通过将多组候选测试策略预埋在客户端,使得客户端可以在离线状态下自行确定应用测试策略自主执行测试,实时性较高,同时避免从服务器获取应用测试策略带来的带宽资源耗费以及传输处理压力。
在一示例性实施例中,客户端信息中包括客户端标识、测试分组基数以及测试分组参数;如图2所示,在步骤S110中,根据客户端信息获取测试参数,包括以下步骤:
在步骤S111中,根据客户端标识以及测试分组基数,获取测试策略因子。
在步骤S112中,根据测试策略因子以及测试分组参数,确定测试参数。
其中,客户端标识可以是客户端的唯一化表示,例如,若应用测试是针对注册用户的,那么客户端标识可以为目标应用的用户标识,例如,注册账号;若应用测试是针对全部用户的,那么客户端标识可以为客户端的设备标识。由于目标应用可以包括至少一个候选测试策略,因此,可以根据候选测试策略的数量设置用于将目标用户群组进行分组的测试分组参数。可以理解的是,测试分组参数与候选的测试参数、候选测试策略之间具有对应关系,例如,有N个候选测试策略,那么可以在测试分组参数中设置N个分组,每个分组对应一个候选的测试参数。基数是集合论中刻画任意集合大小的一个概念。测试分组基数可以是指确定测试分组参数的集合大小的参考数,测试分组基数越大,测试分组参数的集合也越大。测试策略因子可以是指根据客户端标识和测试分组基数获取的客户端的最终表示结果。在本实施中,可以使用数字、文字等表征测试策略因子。具体地,客户端获取客户端标识和测试分组基数后,可以采用预设的计算、查找等方式,根据客户端标识以及测试分组基数确定该客户端对应的测试策略因子。然后,从测试分组参数中确定所获取的测试策略因子是否与测试分组参数匹配,即,该客户端是否与任一个分组匹配。若匹配,则可以根据匹配结果从测试分组参数与候选的测试参数之间的对应关系中,确定对应的测试参数。本实施例中,通过根据预设的测试分组参数对目标用户群组进行分组,使多组候选测试策略可以在不同的客户端执行,从而提高了应用测试的准确性。
在一示例性实施例中,如图3所示,在步骤S111中,根据客户端标识以及测试分组基数,获取测试策略因子,包括以下步骤:
在步骤S1111中,对客户端标识进行转换处理,得到对应的标识数值。
在步骤S1112中,根据测试分组基数,对标识数值进行求模处理,得到测试策略因子。
在本实施例中,采用数字表征测试策略因子。测试分组基数则可以为预先配置好的固定数值。具体地,客户端获取到客户端标识后,可以采用算法将客户端标识转换成对应的标识数值。为了便于后续与测试分组基数进行求模运算,可以获取标识数值的整数化表示。然后,将该标识数值与测试分组基数进行取模运算,将得到的余数作为测试策略因子。本实施例中,通过客户端自行根据算法对客户端标识进行数值转换,将得到的对应的标识数值和测试分组基数进行求模处理得到的对应的数字化结果,处理过程简单,从而提高了测试策略因子确定过程的效率。
在一示例性实施例中,在步骤S1111中,对客户端标识进行转换处理,得到对应的标识数值,具体包括:采用哈希算法对客户端标识进行转换得到预设长度的字符串;对预设长度的字符串进行转换处理,得到对应的标识数值。
本实施例中描述了将客户端标识转换为对应的标识数值的一种实施方式。具体地,在获取客户端标识后,客户端通过预先配置的哈希算法,将客户端标识转换成预设长度的字符串。本实施例中所配置的哈希算法可以依实际需求而定,不限于是MD4(MessageDigest,消息摘要)、MD5、SHA-1(Secure Hash Algorithm 1,安全散列算法1)及其他中的任一种。在采用哈希算法得到预设长度的字符串后,客户端将所得到的字符串进行转换处理得到的对应的标识数值。进而可以使用该标识数值与测试分组基数进行求模运算,将得到的对应的余数作为测试策略因子。本实施例中,通过客户端自行采用依实际需求配置的哈希算法得到客户端对应的标识数值,可以提高测试策略因子确定过程的效率。
在一示例性实施例中,测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个策略因子分组中包括预设数目的策略子。在步骤S112中,根据测试策略因子以及测试分组参数,确定测试参数,具体包括:根据测试策略因子,在多个策略因子分组中进行查找,确定包括与测试策略因子相同的策略因子的目标策略因子分组;将目标策略因子分组具有的唯一分组标识,作为测试参数。
其中,策略因子是指预先配置的标准表示结果。策略因子分组是指包含多个策略因子的组合,每个策略因子分组与一个唯一分组标识对应。唯一分组标识用于区分不同的策略因子分组和候选测试策略。具体地,客户端的测试分组参数中包括多组策略因子分组,每组策略因子分组与一个唯一分组标识对应。当根据客户端标识得到对应的测试策略因子后,在多个策略因子分组中查找是否存在包含与测试策略因子相同的策略因子的策略因子分组。若查找存在,则将该策略因子分组作为目标策略因子分组。客户端获取目标策略因子分组对应的唯一分组标识,将该唯一分组标识作为测试参数。进而根据该测试参数从至少一组候选测试策略中确定对应的应用测试策略。若查找多个策略因子分组中不存在包含与测试策略因子相同的策略因子的策略因子分组,则说明该客户端不参与应用测试,则不执行任何应用测试策略。本实施例中,通过根据应用测试的分组需求,在测试分组参数中设定多个策略因子分组和对应的唯一分组标识,使得客户端可以直接根据其对应的最终表示结果(即测试策略因子)自行确定测试参数,避免从服务器获取应用测试策略带来的带宽资源耗费以及传输处理压力,从而辅助加快了应用测试效率,实时性较高。
在一示例性实施例中,客户端支持预设策略数目的应用测试策略;客户端信息包括测试分组参数以及测试分组基数,测试分组基数包括预设策略数目的策略因子分组;如图4所示,所述方法还包括以下步骤。
在步骤S410中,根据测试分组基数以及预设的概率因子,确定每组策略因子分组包括的策略因子数目。
在步骤S420中,随机生成策略因子数目的、小于测试分组基数的策略因子,构成策略因子分组,并设置策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
本实施例中对生成测试分组参数的一种实施方式进行说明。其中,概率因子是指以测试分组基数为基准,每个候选测试策略的覆盖率。每个候选测试策略对应的概率因子可以相同,也可以不同,在此不做限定。可以理解的是,生成测试分组参数可以通过包含目标应用的客户端完成,也可以通过其它客户端或者服务器完成。例如,开发人员配置目标应用的客户端。具体地,客户端在获取配置的测试分组基数和概率因子后,根据已获取的测试分组基数和预设的概率因子,采用预设的计算方式计算出每组策略因子分组包括的策略因子数目。预设的计算方式不限于是乘法、除法。在确定每组策略因子分组包括的策略因子数目后,从小于测试分组基数的数字中,随机选取策略因子数目的策略因子,构成策略因子分组,并设置策略因子分组对应的唯一分组标识。为了便于后续与客户端的测试策略因子进行比对,可以从小于测试分组基数的整数中,随机选取策略因子数目的整数策略因子。进一步地,由于每个客户端通常执行一个应用测试策略,因此,不同的策略因子分组中包含的策略因子互不相同。本实例中,通过根据测试分组基数以及预设的概率因子生成一定数目的策略因子,可以控制每组策略因子分组中包含的数目,使得测试分组参数中的配置数量不会过大,从而提高算法的运行效率。通过以随机数的方式为每个策略因子分组随机分配唯一性数字,可以提高测试分组参数的生成效率,且便于执行和维护。
图5是根据一示例性实施例示出的一种具体的应用测试方法的流程图。应用测试方法应用于包括目标应用的客户端。如图5所示,包括以下步骤。
在步骤S510中,根据测试分组基数以及预设的概率因子,确定每组所述策略因子分组包括的策略因子数目。
在步骤S520中,随机生成策略因子数目的、小于测试分组基数的策略因子,构成策略因子分组,并设置策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
具体地,步骤S510-S520中描述的过程可以是包括目标应用的客户端执行的,也可以是其他客户端或者服务器端执行的。示例性地,假设测试分组基数为1000,每个测试策略对应的概率因子为5%,计算策略因子数目的计算方式为乘法。则每组策略因子分组的策略因子数目为1000*5%=50个。策略因子优先采用整数。则从小于测试分组基数1000的整数中,随机选择策略因子数目的50个随机数。若对不同的方案设置了多个,例如4个应用测试策略,与每个策略因子分组进而应用测试策略对应的唯一分组标识分别为base1,base2,exp1,exp2。以下为示例性示出的一种随机生成的测试分组参数的结果:
base1:[9,34,76,106,111,139,149,163,205,257,264,278,315,350,352,354,356,375,390,394,405,411,427,431,461,464,497,502,508,547,573,613,617,676,691,751,820,834,847,850,875,876,902,911,923,932,961,972,979,981];
base2:[13,16,27,61,115,118,120,136,146,152,165,187,192,203,251,254,266,300,316,331,348,387,388,401,440,447,484,488,495,540,541,574,600,611,723,752,753,763,778,789,797,803,812,821,822,915,931,940,943,975];
exp1:[5,58,83,95,109,131,164,166,190,214,217,260,277,281,288,311,327,329,344,360,398,399,413,434,462,476,491,536,557,561,563,581,599,604,620,632,641,655,677,689,693,743,755,760,796,807,838,839,855,885];
exp2:[7,15,41,52,54,97,99,103,104,113,138,179,206,237,244,269,270,335,379,381,385,415,421,432,485,518,523,550,582,593,624,625,629,640,651,695,713,779,782,785,794,795,844,874,884,921,956,976,990,999]。
在步骤S530中,客户端获取客户端信息。客户端信息不限于包括步骤S510-步骤S520生成的测试分组参数、测试分组基数以及客户端标识。客户端标识可以为用户ID或者设备ID。
在步骤S540中,采用哈希算法对客户端标识进行转换得到预设长度的字符串。
在步骤S550中,对预设长度的字符串进行转换处理,得到对应的标识数值。
在步骤S560中,根据测试分组基数,对标识数值进行求模处理,得到测试策略因子。
在步骤S570中,在多个策略因子分组中进行查找,确定包括与测试策略因子相同的策略因子的目标策略因子分组。
在步骤S580中,将目标策略因子分组具有的唯一分组标识,作为测试参数。
在步骤S590中,从客户端预置的多组候选测试策略中,选取与测试参数对应的候选测试策略,确定为应用测试策略。
具体地,以下对步骤S530-S590所述的步骤作示例性说明。假设被触发测试目标应用时,获取客户端标识为设备ID:1839fd2bd20d13。首先,采用哈希算法对设备ID=1839fd2bd20d13进行转换得到预设长度的字符串。然后,将得到的预设长度的字符串进行转换得到对应的标识数值,标识数值可以是整数结果。对标识数值和测试分组基数进行求模运算,将得到的余数作为测试策略因子。若对整数的标识数值和测试分组基数进行求模运算得到测试策略因子为743。继续参考上述步骤S510-S520的示例性说明中生成的测试分组参数,通过查找测试策略因子743在唯一分组标识exp1对应的策略因子分组中。进而,可以确定根据该唯一分组标识exp1确定客户端执行与唯一分组标识exp1对应的应用测试策略。进一步地,若根据客户端标识获得测试策略因子为1,而1不在上述步骤S510-S520的示例性说明中生成的测试分组参数中的任一个策略因子分组中,则表明客户端不执行任何应用测试策略。
应该理解的是,虽然图1-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的子步骤或者阶段的至少一部分轮流或者交替地执行。
图6是根据一示例性实施例示出的一种应用测试装置600框图,应用于包括目标应用的客户端。参照图6,该装置包括测试参数获取模块601、应用测试策略确定模块602和测试模块603。
测试参数获取模块601,被配置为执行被触发测试目标应用时,根据客户端信息获取测试参数;
应用测试策略确定模块602,被配置为执行根据测试参数,确定对应的应用测试策略;
测试模块603,被配置为执行根据应用测试策略,测试目标应用。
在一示例性实施例中,客户端信息中包括客户端标识、测试分组基数以及测试分组参数;测试参数获取模块601,包括:测试策略因子确定单元,被配置为执行根据客户端标识以及测试分组基数,获取测试策略因子;测试参数确定单元,被配置为执行根据测试策略因子以及测试分组参数,确定测试参数。
在一示例性实施例中,测试策略因子确定单元,包括:标识数值生成单元,被配置为执行对客户端标识进行转换处理,得到对应的标识数值;测试策略因子生成单元,被配置为执行根据测试分组基数,对标识数值进行求模处理,得到测试策略因子。
在一示例性实施例中,标识数值生成单元,被配置为执行采用哈希算法对客户端标识进行转换得到预设长度的字符串;对预设长度的字符串进行转换处理,得到对应的标识数值。
在一示例性实施例中,测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个策略因子分组中包括预设数目的策略因子;测试参数确定单元,被配置为执行根据测试策略因子,在多个策略因子分组中进行查找,确定包括与测试策略因子相同的策略因子的目标策略因子分组;将目标策略因子分组具有的唯一分组标识,作为测试参数。
在一示例性实施例中,应用测试策略确定模块602,被配置为执行从客户端预置的多组候选测试策略中,选取与测试参数对应的候选测试策略,确定为应用测试策略。
在一示例性实施例中,客户端支持预设策略数目的应用测试策略;客户端信息包括测试分组参数以及测试分组基数,测试分组基数包括预设策略数目的策略因子分组;所述装置还包括:策略因子数目确定模块,被配置为执行根据测试分组基数以及预设的概率因子,确定每组策略因子分组包括的策略因子数目;策略因子分组生成模块,被配置为执行随机生成策略因子数目的、小于测试分组基数的策略因子,构成策略因子分组,并设置策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
图7是根据一示例性实施例示出的一种用于应用测试的设备700的框图。例如,设备700可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。
参照图7,设备700可以包括以下一个或多个组件:处理组件702、存储器704、电力组件706、多媒体组件708、音频组件710、输入/输出(I/O)的接口712、传感器组件714以及通信组件716。
处理组件702通常控制设备700的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在设备700的操作。这些数据的示例包括用于在设备700上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘或光盘。
电源组件706为设备700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为设备700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述设备700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当设备700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为设备700提供各个方面的状态评估。例如,传感器组件714可以检测到设备700的打开/关闭状态,组件的相对定位,例如所述组件为设备700的显示器和小键盘,传感器组件714还可以检测设备700或设备700一个组件的位置改变,用户与设备700接触的存在或不存在,设备700方位或加速/减速和设备700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
通信组件716被配置为便于设备700和其他设备之间有线或无线方式的通信。设备700可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,设备700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由设备700的处理器720执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (14)

1.一种应用测试方法,其特征在于,所述方法应用于包括目标应用的客户端,包括:
被触发测试所述目标应用时,根据客户端信息获取测试参数,其中,所述客户端信息中包括客户端标识、测试分组基数以及测试分组参数;其中,所述根据客户端信息获取测试参数,包括:根据所述客户端标识以及所述测试分组基数,获取测试策略因子;根据所述测试策略因子以及所述测试分组参数,确定所述测试参数;
根据所述测试参数,确定对应的应用测试策略;
根据所述应用测试策略,测试所述目标应用。
2.根据权利要求1所述的应用测试方法,其特征在于,所述根据所述客户端标识以及所述测试分组基数,获取测试策略因子,包括:
对所述客户端标识进行转换处理,得到对应的标识数值;
根据所述测试分组基数,对所述标识数值进行求模处理,得到测试策略因子。
3.根据权利要求2所述的应用测试方法,其特征在于,所述对所述客户端标识进行转换处理,得到对应的标识数值,包括;
采用哈希算法对所述客户端标识进行转换得到预设长度的字符串;
对所述预设长度的字符串进行转换处理,得到对应的所述标识数值。
4.根据权利要求1所述的应用测试方法,其特征在于,所述测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个所述策略因子分组中包括预设数目的策略因子;所述根据所述测试策略因子以及所述测试分组参数,确定所述测试参数,包括:
根据所述测试策略因子,在所述多个策略因子分组中进行查找,确定包括与所述测试策略因子相同的策略因子的目标策略因子分组;
将所述目标策略因子分组具有的唯一分组标识,作为所述测试参数。
5.根据权利要求1所述的应用测试方法,其特征在于,根据所述测试参数,确定对应的应用测试策略,包括:
从所述客户端预置的多组候选测试策略中,选取与所述测试参数对应的候选测试策略,确定为所述应用测试策略。
6.根据权利要求1所述的应用测试方法,其特征在于,所述客户端支持预设策略数目的应用测试策略;所述客户端信息包括测试分组参数以及测试分组基数,所述测试分组基数包括所述预设策略数目的策略因子分组;所述方法还包括:
根据所述测试分组基数以及预设的概率因子,确定每组所述策略因子分组包括的策略因子数目;
随机生成策略因子数目的、小于所述测试分组基数的策略因子,构成所述策略因子分组,并设置所述策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
7.一种应用测试装置,其特征在于,应用于包括目标应用的客户端,所述装置包括:
测试参数获取模块,被配置为执行被触发测试所述目标应用时,根据客户端信息获取测试参数,其中,所述客户端信息中包括客户端标识、测试分组基数以及测试分组参数;其中,所述测试参数获取模块,包括:测试策略因子确定单元,被配置为执行根据所述客户端标识以及所述测试分组基数,获取测试策略因子;测试参数确定单元,被配置为执行根据所述测试策略因子以及所述测试分组参数,确定所述测试参数;
应用测试策略确定模块,被配置为执行根据所述测试参数,确定对应的应用测试策略;
测试模块,被配置为执行根据所述应用测试策略,测试所述目标应用。
8.根据权利要求7所述的应用测试装置,其特征在于,所述测试策略因子确定单元,包括:
标识数值生成单元,被配置为执行对所述客户端标识进行转换处理,得到对应的标识数值;
测试策略因子生成单元,被配置为执行根据所述测试分组基数,对所述标识数值进行求模处理,得到测试策略因子。
9.根据权利要求8所述的应用测试装置,其特征在于,所述标识数值生成单元,被配置为执行采用哈希算法对所述客户端标识进行转换得到预设长度的字符串;对所述预设长度的字符串进行转换处理,得到对应的所述标识数值。
10.根据权利要求7所述的应用测试装置,其特征在于,所述测试分组参数中包括多个分别具有唯一分组标识的策略因子分组,每个所述策略因子分组中包括预设数目的策略因子;
所述测试参数确定单元,被配置为执行根据所述测试策略因子,在所述多个策略因子分组中进行查找,确定包括与所述测试策略因子相同的策略因子的目标策略因子分组;将所述目标策略因子分组具有的唯一分组标识,作为所述测试参数。
11.根据权利要求7所述的应用测试装置,其特征在于,所述应用测试策略确定模块,被配置为执行从所述客户端预置的多组候选测试策略中,选取与所述测试参数对应的候选测试策略,确定为所述应用测试策略。
12.根据权利要求7所述的应用测试装置,其特征在于,所述客户端支持预设策略数目的应用测试策略;所述客户端信息包括测试分组参数以及测试分组基数,所述测试分组基数包括所述预设策略数目的策略因子分组;所述装置还包括:
策略因子数目确定模块,被配置为执行根据所述测试分组基数以及预设的概率因子,确定每组所述策略因子分组包括的策略因子数目;
策略因子分组生成模块,被配置为执行随机生成策略因子数目的、小于所述测试分组基数的策略因子,构成所述策略因子分组,并设置所述策略因子分组具有与一个应用测试策略唯一对应的唯一分组标识。
13.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的应用测试方法。
14.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的应用测试方法。
CN202010230178.0A 2020-03-27 2020-03-27 应用测试方法、装置、电子设备及存储介质 Active CN111338971B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010230178.0A CN111338971B (zh) 2020-03-27 2020-03-27 应用测试方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010230178.0A CN111338971B (zh) 2020-03-27 2020-03-27 应用测试方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111338971A CN111338971A (zh) 2020-06-26
CN111338971B true CN111338971B (zh) 2023-10-03

Family

ID=71186623

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010230178.0A Active CN111338971B (zh) 2020-03-27 2020-03-27 应用测试方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111338971B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905476B (zh) * 2021-03-12 2023-08-11 网易(杭州)网络有限公司 测试的执行方法及装置、电子设备、存储介质
CN113656303A (zh) * 2021-08-16 2021-11-16 网易(杭州)网络有限公司 游戏新功能的测试方法、设备、存储介质及程序产品
CN115460101B (zh) * 2022-08-02 2024-06-11 北京达佳互联信息技术有限公司 网络服务的管理方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103246597A (zh) * 2012-02-07 2013-08-14 腾讯科技(深圳)有限公司 一种参数的测试方法和设备
CN105302706A (zh) * 2014-06-05 2016-02-03 腾讯科技(深圳)有限公司 应用程序测试方法和装置
CN105354057A (zh) * 2015-10-23 2016-02-24 努比亚技术有限公司 信息处理方法及服务器
CN107092556A (zh) * 2017-03-09 2017-08-25 北京小度信息科技有限公司 测试方法、装置及设备
WO2018113902A1 (en) * 2016-12-19 2018-06-28 Huawei Technologies Co., Ltd. Network node and client device for measuring channel state information

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8769340B2 (en) * 2011-09-08 2014-07-01 Microsoft Corporation Automatically allocating clients for software program testing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103246597A (zh) * 2012-02-07 2013-08-14 腾讯科技(深圳)有限公司 一种参数的测试方法和设备
CN105302706A (zh) * 2014-06-05 2016-02-03 腾讯科技(深圳)有限公司 应用程序测试方法和装置
CN105354057A (zh) * 2015-10-23 2016-02-24 努比亚技术有限公司 信息处理方法及服务器
WO2018113902A1 (en) * 2016-12-19 2018-06-28 Huawei Technologies Co., Ltd. Network node and client device for measuring channel state information
CN107092556A (zh) * 2017-03-09 2017-08-25 北京小度信息科技有限公司 测试方法、装置及设备

Also Published As

Publication number Publication date
CN111338971A (zh) 2020-06-26

Similar Documents

Publication Publication Date Title
EP2977926A1 (en) Method and device for verification using verification code
WO2018000585A1 (zh) 界面主题的推荐方法、装置、终端及服务器
CN111338971B (zh) 应用测试方法、装置、电子设备及存储介质
WO2015062462A1 (en) Matching and broadcasting people-to-search
CN107094094B (zh) 应用程序的连网方法、装置及终端
CN106547547B (zh) 数据采集方法及装置
EP3051772A1 (en) Method and apparatus for accessing network
CN107959757B (zh) 用户信息处理方法、装置、app服务器和终端设备
CN111368232A (zh) 口令分享回流方法、装置、电子设备及存储介质
CN110737844B (zh) 推荐数据的方法、装置、终端设备和存储介质
CN112463418A (zh) 跨设备信息分享方法、装置、介质和电子设备
WO2018145574A1 (zh) 一种信息处理方法及装置、终端、服务器、存储介质
CN113901353A (zh) 信息展示方法、装置、系统、电子设备及服务器
CN104618987B (zh) 接入网络的方法及装置
CN103902688A (zh) 一种文件操作的同步方法及装置
CN106447747B (zh) 图像处理方法及装置
CN110913276B (zh) 数据处理的方法、装置、服务器、终端及存储介质
CN106506808B (zh) 对通讯消息提示的方法及装置
CN110213062B (zh) 处理消息的方法及装置
CN109245992B (zh) 请求处理方法、装置、电子设备及存储介质
CN110764847A (zh) 用户信息处理方法、装置、电子设备及存储介质
CN105827854B (zh) 操作处理方法及装置
CN112732098B (zh) 一种输入的方法及相关装置
CN109948012B (zh) 序列号的生成方法、装置及存储介质
CN107707862A (zh) 视频远程协助的处理方法和装置、第一终端、第二终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant