CN111538652A - 一种应用控件测试方法及相关设备 - Google Patents

一种应用控件测试方法及相关设备 Download PDF

Info

Publication number
CN111538652A
CN111538652A CN202010241600.2A CN202010241600A CN111538652A CN 111538652 A CN111538652 A CN 111538652A CN 202010241600 A CN202010241600 A CN 202010241600A CN 111538652 A CN111538652 A CN 111538652A
Authority
CN
China
Prior art keywords
application
control
application control
test
triggering
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.)
Granted
Application number
CN202010241600.2A
Other languages
English (en)
Other versions
CN111538652B (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.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China 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 Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN202010241600.2A priority Critical patent/CN111538652B/zh
Publication of CN111538652A publication Critical patent/CN111538652A/zh
Application granted granted Critical
Publication of CN111538652B publication Critical patent/CN111538652B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/3676Test management for coverage analysis
    • 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)

Abstract

本发明实施例适用在自动化测试工具中,公开了一种应用控件测试方法及相关设备,所述方法包括:获取第一应用的应用代码中各个控件插桩标签的标签计数;根据标签计数,分别确定各个应用控件的触发覆盖率;调节触发覆盖率小于第一预设阈值的第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;在第二预设时间段内,按照调节后各个应用控件的触发权重,周期性地随机确定目标测试控件,对目标测试控件触发测试事件;获取在第二预设时间段内针对第一应用中应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。通过本发明可以提高针对应用控件进行测试的可靠性。

Description

一种应用控件测试方法及相关设备
技术领域
本申请涉及自动化测试技术领域,尤其涉及一种应用控件测试方法及相关设备。
背景技术
随着互联网技术的发展,越来越多的应用(APP)作为移动应用功能的载体为用户提供一定的业务服务。在APP被发布给用户使用之前,通常需要经过开发和测试阶段,最后才能发布出来,供用户下载使用。其中,APP中通常包含文本输入框、按钮、下拉菜单等多种控件,在APP的测试阶段,需要对控件的功能进行测试,目前,业内常用的做法是通过Monkey测试软件来生成模拟用户的触摸屏幕、按键、滑动跟踪球等的脉冲信息,进而模拟出用户对控件执行的上述操作,以验证控件的性能。而Monkey测试软件对APP中的控件进行模拟操作时,对控件的选取是随机的,有可能存在控件未被测试软件覆盖测试或测试次数太少的问题,进而导致控件测试的测试结果不可靠。
发明内容
本申请提供一种应用控件测试方法及相关设备,通过本发明可以提高针对应用控件进行测试的可靠性。
本发明实施例第一方面提供了一种应用控件测试方法,包括:
获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
结合第一方面,在第一种可能的实现方式中,所述第一应用包含至少一个应用界面;所述各个应用控件分布于所述至少一个应用界面中;
所述在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件之前,还包括:
获取针对所述第二预设时间段设置的控件触发总次数;
根据各个应用界面中分布的应用控件的数量,为所述各个应用界面分配控件触发次数;所述各个应用界面分配的控件触发次数与各自包含的应用控件的数量成正比,所述各个应用界面分配的控件触发次数的总和,等于所述控件触发总次数;所述控件触发次数用于指示在第二预设时间段内,从所述各个应用界面中周期性确定目标测试控件的次数。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件包括:
按照所述应用界面中各个应用控件初始的触发权重,将预设随机数值集合中的各个数值分配给所述应用界面中的各个应用控件,所述应用界面中应用控件分配到的数值的个数与自身的触发权重成正比;
周期性地随机生成属于所述预设随机数值集合的第一随机数,将被分配到所述第一随机数的应用控件确定为所述目标测试控件。
结合第一方面,在第三种可能的实现方式中,所述调节所述第一应用控件初始的触发权重包括:
从第一应用的各个应用控件中确定触发覆盖率大于第二预设阈值的第二应用控件;
确定所述第一应用控件和所述第二应用控件的权重调节比例;所述第一应用控件和所述第二应用控件的权重调节比例满足以下公式:
Figure BDA0002430946990000031
其中,pi为所述第一应用控件的触发覆盖率,wi为所述第一应用控件初始的触发权重,xi为所述第一应用控件的权重调节比例,i为所述第一应用控件的索引,m为所述第一应用控件的个数,i和m为正整数;qj为所述第二应用控件的触发覆盖率,Sj为所述第二应用控件初始的触发权重,yj为所述第二应用控件的权重调节比例,j为所述第二应用控件的索引,n为所述第二应用控件的个数,j和n为正整数;ok为第三应用控件初始的触发权重,所述第三应用控件为所述第一应用中触发覆盖率在第一预设阈值和第二预设阈值之间的应用控件,k为所述第三应用控件的索引,l为所述第三应用控件的个数,k和l为非负整数;
按照所述第一应用控件的权重调节比例,调节所述第一应用控件的触发权重,按照所述第二应用控件的权重调节比例,调节所述第二应用控件的触发权重。
结合第一方面,在第四种可能的实现方式中,所述对所述目标测试控件触发测试事件包括:
获取所述目标测试控件的种类属性信息,根据所述目标测试控件的种类属性信息,生成针对所述目标测试控件的测试事件;
针对所述目标测试控件触发所生成的测试事件。
结合第一方面,在第五种可能的实现方式中,所述对所述目标测试控件触发测试事件包括:
获取所述目标测试控件的坐标信息,根据所述目标测试控件的坐标信息,确定所述目标测试控件的测试区域;
在所述目标测试控件的测试区域内,针对所述目标测试控件触发所述测试事件。
结合第一方面,在第六种可能的实现方式中,所述各个应用控件在所述第一应用的应用代码中存在对应的触发条件代码;
所述方法还包括:
在所述应用控件对应的触发条件代码之后,插入针对所述应用控件的插桩代码;所述插桩代码包含所述应用控件的控件插桩标签,所述插桩代码在所述应用控件对应的触发条件代码被触发后运行,所述插桩代码每运行一次所述应用控件的控件插桩标签的标签计数加一。
本申请实施例第二方面提供了一种应用控件测试设备,包括:
标签获取模块,用于获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
覆盖率确定模块,用于根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
权重调节模块,用于从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
测试模块,用于在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
结果生成模块,用于获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
本发明实施例第三方面提供了一种应用控件测试设备,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行本发明实施例中上述任一方面中的方法。
本发明实施例第四方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述任一方面中的方法。
本发明实施例中,获取第一应用的应用代码中各个控件插桩标签的标签计数,该控件插桩标签是预先在应用代码中插入的、用于统计第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签。根据各个控件插桩标签的标签计数,分别确定各个应用控件的触发覆盖率,进而针对触发覆盖率小于第一预设阈值的第一应用控件,调节其初始的触发权重,使调节后的第一应用控件的触发权重升高。然后在第二预设时间段内,按照调节后的各个应用控件的触发权重,周期性地从各个应用控件中随机确定目标测试控件,从而对目标测试控件触发测试事件,并获取在第二预设时间段内针对第一应用中应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。通过对触发覆盖率较低的第一应用控件的触发权重进行调节,在第二预设时间段内根据调节后的触发权重触发测试事件,使得在第二预设时间段内针对第一应用控件的触发测试事件的比重升高,提高对第一应用的应用控件测试的可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种应用控件测试方法的流程示意图;
图2为本申请实施例提供的一种应用界面示意图;
图3是本申请实施例提供的另一种应用控件测试方法的流程示意图;
图4是本申请实施例提供的一种应用控件测试设备的结构示意图;
图5是本发明实施例提供的另一种应用控件触发设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供的应用控件测试方法,可以使用在Monkey自动化测试平台上、Monkey runner自动化测试平台上或者其他模拟用户触发控件的自动化测试平台上。本申请实施例中的应用控件测试方法可广泛适用于对运行在终端上的应用程序进行控件测试的场景,其中,终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)等,在此不做限制。
下面结合图1~图3介绍本申请实施例提供的应用控件测试方法,参见图1,图1是本申请实施例提供的一种应用控件测试方法的流程示意图,如图所示,所述方法可以包括以下步骤:
S101,获取第一应用的应用代码中各个控件插桩标签的标签计数。
在步骤S101之前,对第一应用的应用代码进行插桩操作,在第一应用的应用代码中插入、用于统计所述第一应用中各个应用控件被触发测试事件的次数的控件插桩标签。第一应用中不同的应用控件对应的控件插桩标签各不相同。
这里,对第一应用的应用代码进行解析,获取应用控件的触发条件代码,将触发条件代码之后作为应用控件的插桩点。具体的,各个应用控件在第一应用的应用代码中存在对应的触发条件代码和控件事件代码,可以在应用控件对应的触发条件代码之后,插入针对应用控件的插桩代码,插桩代码包含应用控件的控件插桩标签;插桩代码在应用控件对应的触发条件代码被触发后运行,每运行一次,应用控件的控件插桩标签的标签计数加一。这里,在应用控件对应的触发条件代码之后,插入针对应用控件的插桩代码,并不仅限于代码出现位置的先后顺序,也可以是代码运行逻辑上的先后顺序。
举例来说,按钮控件在第一应用的应用代码中可以存在检测点击操作的触发条件代码,以及在点击操作发生后执行的控件事件代码。可以在按钮控件的触发条件代码后插入针对该按钮控件的控件插桩标签,用以统计控件按钮被点击的次数。例如,若第一应用的应用代码中有以下一段定义按钮控件,及按钮控件事件操作相关信息的代码:
Function buttonClick(){
alert(“已点击按钮”);
}
ID=“button”type=“button”value=“点击”onclick=buttonClick();
end
在上述代码中,定义了一个ID是“button”,类型为“按钮类”,显示内容为“点击”的按钮控件,该按钮控件通过onclick函数检测是否有针对该控件按钮的点击事件,即onclick是该按钮控件的触发条件代码,在检测到点击事件之后,调用buttonClick函数,弹出“已点击按钮”的对话框,即buttonClick是触发条件之后的控件事件代码。下面在该按钮控件的触发条件代码后插入统计该控件按钮被点击次数的插桩代码,插桩代码中包含该按钮控件对应的控件插桩标签i进行累加的代码,插桩后的代码如下:
i=0;
Function buttonClick(i){
++i;
alert(“已点击按钮”);
return i
}
ID=“button”type=“button”value=“点击”onclick=buttonClick();
end
通过在buttonClick函数中插入变量i,每点击一次该按钮控件,就调用buttonClick函数,通过buttonClick函数将i累加一次。
上述过程可以通过各种插桩工具实现,例如,针对安卓系统可以通过AndroidHook插桩工具、ASM字节码插桩工具实现,针对IOS系统可以通过Method Swizzling插桩工具实现。
进而,在步骤S101之前的第一预设时间段内,按照第一应用的各个应用控件初始的触发权重,周期性地从各个应用控件中随机选取待测试的应用控件,进而向待测试的应用控件触发测试事件。在第一预设时间段内,根据各个应用控件初始的触发权重随机选取待测试的应用控件的具体实现方式将在后面介绍。
第一预设时间段结束后,可以根据预先设置的标签计数记录方式,将第一预设时间段内各个应用控件对应的标签计数记录下来。例如,预先设置的标签计数记录方法可以是将各个应用控件对应的标签计数,记录在数据库中预设的存储位置,又如,预先设置的标签计数记录方法可以是将各个应用控件对应的标签计数,写入在第一预设时间段内针对第一应用中的应用控件生成的测试日志中。进而步骤S101中可以根据相应的标签计数记录方式,获取各个控件插桩标签的标签计数。
S102,根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率。
这里,应用控件在一段时间内的触发覆盖率的确定方式为:将该段时间内各个应用控件被触发测试事件的次数,除各个应用控件在该段时间内被触发测试事件的次数总和,得到的商是应用控件在该段时间内对应的触发覆盖率。步骤S102中确定的触发覆盖率是各个应用控件在第一预设时间段内的触发覆盖率,即第一预设时间段内各个应用控件被触发测试事件的次数,与各个应用控件在第一预设时间段内被触发测试事件的总次数的比值。
S103,从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高。
在第一预设时间段之前,首先分别针对第一应用的各个应用控件预设初始的触发权重,该初始的触发权重是在第一预设时间段内针对各个应用控件触发测试事件的参考权重。针对各个应用控件初始的触发权重可以是相等的权重数值,也可以是随机分配的权重数值。
通常情况下,初始的触发权重较高的应用控件,在第一预设时间段内被触发测试事件的次数相对较高,反之亦然。但实际在第一预设时间段内对应用控件触发测试事件时,是根据触发权重随机选取待测试的应用控件的,其中有一定的随机因素,因此也可能出现触发权重高的应用控件被触发测试事件的次数相对较低的随机情况。在对第一应用的各个应用控件的测试场景中,我们不考虑是否达到各个应用控件被触发测试事件的次数平均化的绝对理想状态,但我们期望通过对触发权重的调节,使得在第一预设时间段内被触发测试事件过少次数的应用控件,在后续的第二预设时间段内能够被更大概率地被触发,以减少该应用控件被较少次数的触发,而导致不能很好测试该应用控件抗压能力的情况。
因此,这里可以首先选取在第一预设时间段内的触发覆盖率小于第一预设阈值的第一应用控件,第一预设阈值可以是小于或等于平均触发覆盖率的一个阈值。进而对第一应用控件初始的触发权重进行调节,使调节后的第一应用的触发权重升高。例如,第一应用中有四个应用控件,对应初始的触发权重分别是2、4、4和7,在第一预设时间段内的触发覆盖率分别为10%、25%、21%和44%,第一预设阈值为20%,那么将初始的触发权重为2的应用控件的触发权重调高。一种实现方式中,可以预先设置一定的调节率,例如,按照该调节率将第一应用控件的触发权重上调对应的百分比。另一种实现方式中,可以确定第一预设时间段内触发覆盖率最高的应用控件,将第一应用控件初始的触发权重,与第一预设时间段触发覆盖率最高的应用控件初始的触发权重的平均值,确定为第一应用控件调节后的触发权重。
可选的,第一应用可以包含至少一个应用界面,第一应用的应用控件分布在这至少一个应用功能界面中,针对一个应用界面,可以在其他应用界面中有对应的转入该应用界面的转入应用控件,该应用界面中也可以有从该应用界面转至其他应用界面的转出应用控件。这里可以针对第一应用的各个应用界面统计其中应用控件的平均触发覆盖率,若某一应用界面的平均触发覆盖率小于预设的第一平均覆盖率阈值,说明跳转至该应用界面的频率比较低,所以该应用界面中的应用控件被触发的频率都比较低。因此,一种实现方式中,可以将该应用界面对应的转入应用控件的触发权重升高,以使跳转至该应用界面的概率升高,进而停留在该应用界面中触发测试事件,提高该应用界面中应用控件的触发覆盖率。另一种实现方式中,可以将应用界面对应的转出应用控件的触发权重降低,以使从该应用界面跳转出的概率降低,进而停留在该应用界面中触发测试事件,提高该应用界面中应用控件的触发覆盖率。又一种实现方式中,可以将该应用界面对应的转入应用控件升高,同时将该应用界面对应的转出应用控件降低。
举例来说,参见图2,图2为本申请实施例提供的一种应用界面示意图,如图所示,图2示出了四个应用界面,包括界面1、界面2、界面3和界面4,其中,界面4是第一应用对应的主界面,即第一应用启动后展示界面1,界面1中包含控件1、控件2、控件3以及其他控件。控件1的功能为在接收到点击事件时,开启界面2;控件2的功能为在接收到点击事件时,开启界面3;控件3的功能为在接收到点击事件时,开启界面4。界面2中包含控件4,控件4的功能为在接收到点击事件时,返回界面1;界面3中包含控件5,控件5的功能为在接收到点击事件时,返回界面1;界面4包含控件6,控件6的功能为在接收到点击事件时,返回界面1。
以界面2为例,控件1是界面2对应的转入应用控件,控件4是界面2对应的转出应用控件,若界面2中应用控件在第一预设时间段内的平均覆盖率低于第一平均覆盖率阈值,那么可以将控件1对应的触发权重升高,和/或,将控件4对应的触发权重降低。同理,若界面3中应用控件在第一预设时间段内的平均覆盖率低于第一平均覆盖率阈值,那么可以将控件2对应的触发权重升高,和/或,将控件5对应的触发权重降低;若界面4中应用控件在第一预设时间段内的平均覆盖率低于第一平均覆盖率阈值,那么可以将控件3对应的触发权重升高,和/或,将控件6对应的触发权重降低。
S104,在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件。
这里,调节后各个应用控件的触发权重,是指在S103中对第一应用控件初始的触发权重调节后,各个应用控件对应的触发权重。第二预设时间段内,随机确定目标测试控件所使用的、调节后各个应用控件的触发权重,包括调节后的第一应用控件的触发权重,以及除第一应用控件以外的其他应用控件的触发权重,而使用到的除第一应用控件以外其他应用控件的触发权重,可以是被调节后的,也可以是未被调节的、初始的触发权重。此处不做限定。
在第二预设时间段内对第一应用中应用控件的测试过程,可以是分别针对第一应用中各个应用界面中的应用控件进行测试的过程。在针对每个应用界面中应用控件进行测试前,可以根据各个应用界面中的应用控件调节后的触发权重,为各个应用界面设置预设随机数值集合,并将预设随机数值集合中的各个数值分配给应用界面中的各个应用控件,应用界面中的应用控件分配到的数值的个数与自身的触发权重成正比。
在一种确定预设随机数值集合,并分配预设随机数值集合中数值的实现方式中:若应用界面中各个应用控件调节后的触发权重是整数,将应用界面中各个应用控件调节后的触发权重的和确定为第一数量,可以将任意连续的第一数量的整数数值,作为应用界面对应的预设随机数值集合。进而按照各个应用控件调节后的触发权重,为其分配预设随机数值集合中的对应个数的数值。例如,若某一应用界面中四个应用控件调节后的触发权重分别是5、4、4和7,第一数量为20,可以将从1至20的整数,作为该应用界面对应的预设随机数值集合,或者将其他任意连续的20个整数,如2至21的整数,作为该应用界面对应的预设随机数值集合。若1至20的整数是该应用界面对应的预设随机数值集合,可以将1至5的整数分配给该应用界面中触发权重为5的界面控件,将6至9的整数分配给该应用界面中触发权重为4的界面控件,将10至13分配给该应用界面中触发权重为4的界面控件,将14至20的整数分配给该应用界面中触发权重为7的界面控件。
若应用界面中各个应用控件调节后的触发权重有小数,可以对各个触发权重进行整数归一化处理,将小数的触发权重归一化成整数的触发权重,进而按照上述整数的方式确定预设随机数值集合,并分配预设随机数值集合中的各个数值。这里进举例进行说明。例如,若某一应用界面中的三个应用控件调节后的触发权重分别为0.5、3和1.5,整数归一化处理后对应的整数的触发权重分别为1、6和3,可以将1至10的整数,作为该应用界面对应的预设随机数值结合。进而将1分配给该应用界面中触发权重为0.5的应用控件,将2至7的整数分配给该应用界面中触发权重为3的应用控件,将8至10的整数分配给该应用界面中触发权重为1.5的应用控件。
上面介绍了当调节后的触发权重为整数或小数的情况下,如何确定应用界面对应的预设随机数值集合,以及如何分配预设随机数值集合中的数值,在预设随机数值集合中的数值分配完毕后,周期性地随机生成属于预设随机数值集合中的第一随机数,如,可以通过随机函数生成该第一随机数,进而将分配到该第一随机数的应用控件确定为目标测试控件。例如,假设调节后的触发权重为0.5、3和1.5的应用控件被分配到的数值依次为1、2至7的整数、8至10的整数,若第一随机数为3,那么触发权重为3的应用控件被确定为目标测试控件。
在另一种实现方式中,也可以为应用界面确定小数类型的预设随机数值集合,然后将预设随机数值集合中的小数分配给该应用界面的应用控件,这里分配的原则依然是应用界面中应用控件分配到的数值的个数与自身的触发权重成正比。进而生成属于预设随机数值集合的、小数的第一随机数,并匹配对应的目标测试控件。具体实现此处不再赘述。
在目标测试控件确定之后,对目标测试控件触发测试事件,对目标测试控件触发的测试事件可以是随机类型的测试事件。
可选的,可以获取目标测试控件的种类属性信息,根据目标测试控件的种类属性信息生成针对目标测试控件的测试事件,进而针对目标测试控件触发所生成的测试事件。例如,若目标测试控件的种类属性信息是按钮类,可以生成点击测试事件;若目标测试控件的种类属性信息是文本框类,可以生成文本输入测试事件;若目标测试控件的种类属性是跟踪球类,可以生成滑动测试事件,等等。
可选的,可以获取目标测试控件的坐标信息,根据目标测试控件的坐标信息,确定目标测试控件的测试区域,进而在目标测试控件的测试区域内,针对目标测试控件触发测试事件。例如,目标测试控件的坐标信息的格式可以为(目标测试控件左上角像素横坐标、目标测试控件左上角像素纵坐标、目标测试控件宽度、目标测试控件高度);目标测试控件的坐标信息的格式也可以为(目标测试控件最左侧像素点的横坐标、目标测试控件最右侧像素点的横坐标、目标测试控件最高点像素点的纵坐标、目标测试控件最低点像素点的纵坐标)。进而根据目标测试控件的坐标信息,就可以从对应的应用界面中确定出坐标信息对应的一片测试区域,可以进一步随机选取测试区域内的一个坐标,作为测试事件的触发像素点。
以上详细介绍了在第二预设时间段内,按照各个应用控件调节后的触发权重,周期性对第一应用中应用控件触发测试事件的实现方式,在第一预设时间段内,按照各个应用控件初始的触发权重周期性对第一应用中应用控件触发测试事件的实现方式,可参照上述过程,不再具体赘述。
S105,获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
这里,第二预设时间段结束后,会生成在第二预设时间段内针对第一应用中应用控件生成的测试日志,测试日志中可以包含第一应用中各个应用控件成功响应测试事件的比例,进而可以根据各个应用控件成功响应测试事件的比例,与预设的响应比例阈值,确定针对第一应用的各个应用控件的控件测试结果。
在一些可选的实现方式中,步骤S105之前可以进一步确定第一应用的各个应用控件在第二预设时间段内的触发覆盖率,若各个应用控件在第二预设时间段内的触发覆盖率均高于第一预设阈值,则执行步骤S105。若存在第二预设时间段内的触发覆盖率小于第一预设阈值的应用控件,可参考步骤S101~S103的具体实现方式,对各个应用控件的触发权重再次进行调节并测试,直至测试后各个应用控件的触发覆盖率均高于第一预设阈值。
本发明实施例中,获取第一应用的应用代码中各个控件插桩标签的标签计数,该控件插桩标签是预先在应用代码中插入的、用于统计第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签。根据各个控件插桩标签的标签计数,分别确定各个应用控件的触发覆盖率,进而针对触发覆盖率小于第一预设阈值的第一应用控件,调节其初始的触发权重,使调节后的第一应用控件的触发权重升高。然后在第二预设时间段内,按照调节后的各个应用控件的触发权重,周期性地从各个应用控件中随机确定目标测试控件,从而对目标测试控件触发测试事件,并获取在第二预设时间段内针对第一应用中应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。通过对触发覆盖率较低的第一应用控件的触发权重进行调节,在第二预设时间段内根据调节后的触发权重触发测试事件,使得在第二预设时间段内针对第一应用控件的触发测试事件的比重升高,提高对第一应用的应用控件测试的可靠性。
参见图3,图3是本申请实施例提供的另一种应用控件测试方法的流程示意图,如图所示,所述方法可以包括以下步骤:
S301,获取第一应用的应用代码中各个控件插桩标签的标签计数。
其中,控件插桩标签为预先在应用代码中插入的、用于统计第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签。
S302,根据各个控件插桩标签的标签计数,分别确定各个应用控件的触发覆盖率。
触发覆盖率为在第一预设时间段内,各个应用控件被触发测试事件的次数与各个应用控件被触发测试事件的次数总和的比值。
S303,从第一应用的各个应用控件中分别确定触发覆盖率小于第一预设阈值的第一应用控件,以及触发覆盖率大于第二预设阈值的第二应用控件。
其中,第一预设阈值可以是小于第一应用中应用控件的平均触发覆盖率的一个阈值,第二预设阈值是大于第一应用中应用控件的平均触发覆盖率的一个阈值。
S304,分别对第一应用控件初始的触发权重和第二应用控件的初始触发权重进行调节,使第一应用控件调节后的触发权重升高,且第二应用控件的初始触发权重降低。
本申请实施例中,第一应用中各个应用控件初始的触发权重之和为1。这里,可以对于触发覆盖率较低的第一应用控件,可以升高其触发权重,相应的,就需要将第一应用中触发覆盖率较高的第二应用控件的触发权重降低。具体实现中,可以先确定针对第一应用控件和第二应用控件各自的权重调节比例,进而根据确定的权重调节比例,对第一应用控件和第二应用控件进行触发权重的调节。
一种实现方式中,可以根据公式(1)确定第一应用控件和第二应用控件各自的权重调节比例,公式(1)如下所示:
Figure BDA0002430946990000141
其中,pi为第一应用控件的触发覆盖率,wi为第一应用控件初始的触发权重,xi为第一应用控件的权重调节比例,i为第一应用控件的索引,m为第一应用控件的个数,i和m为正整数;qj为第二应用控件的触发覆盖率,Sj为第二应用控件初始的触发权重,yj为第二应用控件的权重调节比例,j为第二应用控件的索引,n为第二应用控件的个数,j和n为正整数;ok为第三应用控件初始的触发权重,第三应用控件为第一应用中触发覆盖率在第一预设阈值和第二预设阈值之间的应用控件,k为第三应用控件的索引,l为第三应用控件的个数,k和l为非负整数。
例如,若第一应用中共五个应用控件,对应的初始的触发权重以及在第一预设时间段内对应的触发覆盖率如表1所示:
控件1 控件2 控件3 控件4 控件5
初始的触发权重 0.25 0.15 0.3 0.2 0.1
触发覆盖率 0.2 0.1 0.3 0.3 0.1
表1
若第一预设阈值为0.19,第二预设阈值为0.21,则控件2和控件5是第一应用控件,控件3和控件4是第二应用控件,控件1是第三应用控件,进而将上述参数代入公式(1)得到如下方程组:
Figure BDA0002430946990000142
解上述方程得到x1为0.875,x2为1.8125,y1为0.6875,y2为0.8531。进而通过上述权重调节比例对相应的应用控件进行触发权重的调节,得到调节后控件1~控件5的触发权重依次为0.25、0.28125、0.28125、0.09375、和0.09375。
S305,获取针对第二预设时间段设置的控件触发总次数,根据各个应用界面中分布的应用控件的数量,为第一应用的各个应用界面分配控件触发次数。
这里,针对第一应用中的各个应用界面不通过应用控件打开的情况,例如可以通过链接等形式打开。依次打开第一应用的各个应用界面,进而进行一定次数的测试触发事件,其中,各个应用界面分配的控件触发次数与各自包含的应用控件的数量成正比,各个应用界面分配的控件触发次数的总和,等于控件触发总次数;控件触发次数用于指示在第二预设时间段内,从各个应用界面中周期性确定目标测试控件的次数。例如,第二预设时间段内针对第一应用设置的控件触发总次数是200次,第一应用包含4个应用界面,界面1、界面2、界面3和界面4包含应用控件的数量分别是10个、5个、3个、和2个,那么界面1、界面2、界面3和界面4分配到的控件触发次数依次为100次、20次、30次和20次。
S306,在第二预设时间段内,根据应用界面中应用控件的触发权重,按照应用界面对应的控件触发次数,周期性地从应用界面的应用控件中随机确定目标测试控件,对目标测试控件触发测试事件。
这里,针对每个应用界面,周期性随机确定目标测试控件并触发测试事件的总次数,等于S305中分配给该应用界面的控件触发次数。周期性随机确定目标测试控件并触发测试事件的具体过程,可以参阅图1对应的实施例中步骤S104的实现过程,此处不再赘述。
S307,获取在第二预设时间段内针对第一应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。
本发明实施例中,获取第一应用的应用代码中各个控件插桩标签的标签计数,该控件插桩标签是预先在应用代码中插入的、用于统计第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签。根据各个控件插桩标签的标签计数,分别确定各个应用控件的触发覆盖率,进而针对触发覆盖率小于第一预设阈值的第一应用控件,调节其初始的触发权重,使调节后的第一应用控件的触发权重升高,针对触发覆盖率大于第二预设阈值的第二应用控件,调节其初始的触发权重,使其调节后的触发权重降低。然后在第二预设时间段内,按照调节后的各个应用控件的触发权重,周期性地从各个应用控件中随机确定目标测试控件,从而对目标测试控件触发测试事件,并获取在第二预设时间段内针对第一应用中应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。通过对第一应用控件和第二应用控件的触发权重进行调节,在第二预设时间段内根据调节后的触发权重触发测试事件,使得在第二预设时间段内针对第一应用控件的触发测试事件的比重升高,提高对第一应用的应用控件测试的可靠性。
参见图4,图4是本申请实施例提供的一种应用控件测试设备的结构示意图,如图所示,所述应用控件测试设备40包括:
标签获取模块401,用于获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
覆盖率确定模块402,用于根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
权重调节模块403,用于从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
测试模块404,用于在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
结果生成模块405,用于获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
具体实现中,所述应用控件触发设备可以通过其内置的各个功能模块执行如图1和图3的应用控件测试方法中的各个步骤,具体实施细节可参阅图1和图3对应的实施例中各个步骤的实现细节,此处不再赘述。
本发明实施例中,标签获取模块获取第一应用的应用代码中各个控件插桩标签的标签计数,该控件插桩标签是预先在应用代码中插入的、用于统计第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签。覆盖率确定模块根据各个控件插桩标签的标签计数,分别确定各个应用控件的触发覆盖率,进而权重调节模块针对触发覆盖率小于第一预设阈值的第一应用控件,调节其初始的触发权重,使调节后的第一应用控件的触发权重升高。然后测试模块在第二预设时间段内,按照调节后的各个应用控件的触发权重,周期性地从各个应用控件中随机确定目标测试控件,从而对目标测试控件触发测试事件,结果生成模块获取在第二预设时间段内针对第一应用中应用控件生成的测试日志,根据测试日志确定第一应用的控件测试结果。通过对触发覆盖率较低的第一应用控件的触发权重进行调节,在第二预设时间段内根据调节后的触发权重触发测试事件,使得在第二预设时间段内针对第一应用控件的触发测试事件的比重升高,提高对第一应用的应用控件测试的可靠性。
参见图5,图5是本发明实施例提供的另一种应用控件触发设备的结构示意图。如图5所示,所述应用控件触发装置50可以包括:至少一个处理器501,例如CPU,至少一个网络接口504,用户接口503,存储器505,至少一个通信总线502。其中,通信总线502用于实现这些组件之间的连接通信。其中,用户接口503可以包括显示屏(Display)、键盘(Keyboard),可选用户接口503还可以包括标准的有线接口、无线接口。网络接口504可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器505可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器505可选地还可以是至少一个位于远离前述处理器501的存储装置。如图5所示,作为一种计算机存储介质的存储器505中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图5所示的应用控件触发装置50中,网络接口504主要用于连接承载应用程序的终端;而用户接口503主要用于为用户提供输入的接口;而处理器501可以用于调用存储器505中存储的设备控制应用程序,以实现:
获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
应当理解,本发明实施例中所描述的应用控件触发装置50可执行前文图1和图3所对应实施例中对所述应用控件触发方法的描述,也可执行前文图4所对应实施例中对所述应用控件触发装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的应用控件触发装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图1和图3所对应实施例中对所述应用控件触发方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种应用控件测试方法,其特征在于,包括:
获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
2.根据权利要求1所述的方法,其特征在于,所述第一应用包含至少一个应用界面;所述各个应用控件分布于所述至少一个应用界面中;
所述在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件之前,还包括:
获取针对所述第二预设时间段设置的控件触发总次数;
根据各个应用界面中分布的应用控件的数量,为所述各个应用界面分配控件触发次数;所述各个应用界面分配的控件触发次数与各自包含的应用控件的数量成正比,所述各个应用界面分配的控件触发次数的总和,等于所述控件触发总次数;所述控件触发次数用于指示在第二预设时间段内,从所述各个应用界面中周期性确定目标测试控件的次数。
3.根据权利要求2所述的方法,其特征在于,所述在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件包括:
按照所述应用界面中各个应用控件初始的触发权重,将预设随机数值集合中的各个数值分配给所述应用界面中的各个应用控件,所述应用界面中应用控件分配到的数值的个数与自身的触发权重成正比;
周期性地随机生成属于所述预设随机数值集合的第一随机数,将被分配到所述第一随机数的应用控件确定为所述目标测试控件。
4.根据权利要求1所述的方法,其特征在于,所述调节所述第一应用控件初始的触发权重包括:
从第一应用的各个应用控件中确定触发覆盖率大于第二预设阈值的第二应用控件;
确定所述第一应用控件和所述第二应用控件的权重调节比例;所述第一应用控件和所述第二应用控件的权重调节比例满足以下公式:
Figure FDA0002430946980000021
其中,pi为所述第一应用控件的触发覆盖率,wi为所述第一应用控件初始的触发权重,xi为所述第一应用控件的权重调节比例,i为所述第一应用控件的索引,m为所述第一应用控件的个数,i和m为正整数;qj为所述第二应用控件的触发覆盖率,Sj为所述第二应用控件初始的触发权重,yj为所述第二应用控件的权重调节比例,j为所述第二应用控件的索引,n为所述第二应用控件的个数,j和n为正整数;ok为第三应用控件初始的触发权重,所述第三应用控件为所述第一应用中触发覆盖率在第一预设阈值和第二预设阈值之间的应用控件,k为所述第三应用控件的索引,l为所述第三应用控件的个数,k和l为非负整数;
按照所述第一应用控件的权重调节比例,调节所述第一应用控件的触发权重,按照所述第二应用控件的权重调节比例,调节所述第二应用控件的触发权重。
5.根据权利要求1所述的方法,其特征在于,所述对所述目标测试控件触发测试事件包括:
获取所述目标测试控件的种类属性信息,根据所述目标测试控件的种类属性信息,生成针对所述目标测试控件的测试事件;
针对所述目标测试控件触发所生成的测试事件。
6.根据权利要求1所述的方法,其特征在于,所述对所述目标测试控件触发测试事件包括:
获取所述目标测试控件的坐标信息,根据所述目标测试控件的坐标信息,确定所述目标测试控件的测试区域;
在所述目标测试控件的测试区域内,针对所述目标测试控件触发所述测试事件。
7.根据权利要求1所述的方法,其特征在于,所述各个应用控件在所述第一应用的应用代码中存在对应的触发条件代码;
所述方法还包括:
在所述应用控件对应的触发条件代码之后,插入针对所述应用控件的插桩代码;所述插桩代码包含所述应用控件的控件插桩标签,所述插桩代码在所述应用控件对应的触发条件代码被触发后运行,所述插桩代码每运行一次所述应用控件的控件插桩标签的标签计数加一。
8.一种应用控件测试设备,其特征在于,包括:
标签获取模块,用于获取第一应用的应用代码中各个控件插桩标签的标签计数;所述控件插桩标签为预先在所述应用代码中插入的、用于统计所述第一应用中各个应用控件在第一预设时间段内被触发测试事件的次数的标签;
覆盖率确定模块,用于根据所述各个控件插桩标签的标签计数,分别确定所述各个应用控件的触发覆盖率,所述触发覆盖率为在所述第一预设时间段内,所述各个应用控件被触发测试事件的次数与所述各个应用控件被触发测试事件的次数总和的比值;
权重调节模块,用于从所述第一应用的各个应用控件中确定触发覆盖率小于第一预设阈值的第一应用控件,调节所述第一应用控件初始的触发权重,以使调节后的所述第一应用控件的触发权重升高;所述第一应用控件初始的触发权重是在所述第一预设时间段内针对所述第一应用控件触发测试事件的参考权重;
测试模块,用于在第二预设时间段内,按照调节后所述各个应用控件的触发权重,周期性地从所述各个应用控件中随机确定目标测试控件,对所述目标测试控件触发测试事件;
结果生成模块,用于获取在所述第二预设时间段内针对所述第一应用中应用控件生成的测试日志,根据所述测试日志确定所述第一应用的控件测试结果。
9.一种应用控件触发设备,其特征在于,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至7任意一项所述的方法。
CN202010241600.2A 2020-03-30 2020-03-30 一种应用控件测试方法及相关设备 Active CN111538652B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010241600.2A CN111538652B (zh) 2020-03-30 2020-03-30 一种应用控件测试方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010241600.2A CN111538652B (zh) 2020-03-30 2020-03-30 一种应用控件测试方法及相关设备

Publications (2)

Publication Number Publication Date
CN111538652A true CN111538652A (zh) 2020-08-14
CN111538652B CN111538652B (zh) 2024-09-10

Family

ID=71978523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010241600.2A Active CN111538652B (zh) 2020-03-30 2020-03-30 一种应用控件测试方法及相关设备

Country Status (1)

Country Link
CN (1) CN111538652B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181784A (zh) * 2020-10-21 2021-01-05 中国工商银行股份有限公司 基于字节码注入的代码故障分析方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512023A (zh) * 2014-09-26 2016-04-20 腾讯科技(深圳)有限公司 一种Monkey测试方法及装置
CN107656864A (zh) * 2016-11-09 2018-02-02 华东师范大学 一种基于概率模型的移动应用自动化测试方法
CN107783898A (zh) * 2017-07-24 2018-03-09 平安科技(深圳)有限公司 移动应用的测试方法及测试设备
CN110580222A (zh) * 2019-08-29 2019-12-17 清华大学 一种软件测试用例生成方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512023A (zh) * 2014-09-26 2016-04-20 腾讯科技(深圳)有限公司 一种Monkey测试方法及装置
CN107656864A (zh) * 2016-11-09 2018-02-02 华东师范大学 一种基于概率模型的移动应用自动化测试方法
CN107783898A (zh) * 2017-07-24 2018-03-09 平安科技(深圳)有限公司 移动应用的测试方法及测试设备
CN110580222A (zh) * 2019-08-29 2019-12-17 清华大学 一种软件测试用例生成方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181784A (zh) * 2020-10-21 2021-01-05 中国工商银行股份有限公司 基于字节码注入的代码故障分析方法及系统
CN112181784B (zh) * 2020-10-21 2024-03-26 中国工商银行股份有限公司 基于字节码注入的代码故障分析方法及系统

Also Published As

Publication number Publication date
CN111538652B (zh) 2024-09-10

Similar Documents

Publication Publication Date Title
CN105320572B (zh) 浏览器异常处理方法、装置及系统
CN110992169A (zh) 一种风险评估方法、装置、服务器及存储介质
US20220172090A1 (en) Data identification method and apparatus, and device, and readable storage medium
US11321777B1 (en) Business data processing method and computer device
CN107656864A (zh) 一种基于概率模型的移动应用自动化测试方法
CN103870123B (zh) 一种信息处理方法及电子设备
CN110795175A (zh) 模拟控制智能终端的方法、装置及智能终端
CN108985048B (zh) 模拟器识别方法及相关装置
US20220053335A1 (en) Method for detecting an abnormal device, device and storage medium
CN109194689A (zh) 异常行为识别方法、装置、服务器及存储介质
CN110209551A (zh) 一种异常设备的识别方法、装置、电子设备及存储介质
CN111538652A (zh) 一种应用控件测试方法及相关设备
CN113032278B (zh) 应用程序的运行方式、终端设备的等级确认方法及装置
CN115696356A (zh) 小区容量调整方法、装置、电子设备及存储介质
CN112966756A (zh) 一种可视化的准入规则的生成方法、装置、机器可读介质及设备
CN115374793B (zh) 基于服务场景识别的语音数据处理方法及相关装置
CN111931106A (zh) 数据处理方法及相关装置
CN107491509B (zh) 一种用户属性信息挖掘方法、装置和介质
CN107273411B (zh) 业务操作与数据库操作数据的关联方法及设备
CN113225435B (zh) 预估电话接通概率的方法、装置和可读存储介质
CN107016316B (zh) 一种条形码的识别方法和装置
CN104778373A (zh) 体育运动的战术识别方法和装置
CN103778210A (zh) 一种待分析文件的文件具体类型的判断方法及装置
CN113891323A (zh) 一种基于WiFi的用户标签获取系统
CN109871471A (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