测试用例生成方法、装置、设备及存储介质制造方法及图纸

技术编号:18496916 阅读:43 留言:0更新日期:2018-07-21 20:05
本发明专利技术实施例公开了一种测试用例生成方法、装置、设备及存储介质,该方法包括:获取终端上的用户行为数据并进行去噪处理;根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;基于页面预测模型及页面跳转与用户操作的对应关系生成测试用例。本发明专利技术实施例对用户行为数据进行去噪处理,能提高生成测试用例的准确性;基于用户历史行为数据,得到页面预测模型及页面跳转与用户操作的对应关系,据此预测用户可能的操作,执行自动化用例,缩减用例数量,保证用例可实施性。另外通过引入扩展页面和环路出现次数阈值,实现预测与真实用户操作之间的一个平衡点,减少预测不准造成的生成用例失败,同时补充用例集。

Test case generation method, device, device and storage medium

An embodiment of the invention discloses a test case generation method, device, equipment and storage medium. The method includes: obtaining user behavior data on the terminal and de-noising processing, training the page prediction model according to the user behavior data after the denoising, and generating the corresponding relationship between page Jump and user operation. Based on the page prediction model and the corresponding relationship between page Jump and user operation, test cases are generated. The implementation example of the invention can denoise the user's behavior data and improve the accuracy of generating test cases. Based on the user historical behavior data, the page prediction model and the corresponding relationship between the page Jump and the user operation are obtained. According to this, the user's possible operation is predicted, the automatization use case is executed, the number of use cases is reduced, and the use of the use case is reduced. The example is enforceable. In addition, a balance between the prediction and the real user operation is realized by introducing the threshold of the extended page and the number of loop occurrences, so as to reduce the failure of the generation use case which is not allowed by the prediction and to supplement the use case set.

【技术实现步骤摘要】
测试用例生成方法、装置、设备及存储介质
本专利技术实施例涉及测试技术,尤其涉及一种测试用例生成方法、装置、设备及存储介质。
技术介绍
随着应用程序(APP)功能的愈加复杂以及定制版本的增多,对终端上APP的测试效率要求也越来越高,目前主要是通过生成自动化测试用例来提高测试效率。目前,Monkey测试模拟用户的按键输入、触摸屏输入和手势输入等,测试终端多长时间会出现异常,但是Monkey测试随机点击无法真实模拟用户使用场景。利用Appium测试框架人工编写自动化用例,虽能固化一些用户场景,但由于需要人工编写用例,增加了自动化用例的维护成本。另外,也有基于用户行为自动生成测试用例的方法,但是该方法关于如何从海量真实用户轨迹中生成用例,并没有给出明确算法;并且,全量生成用例会导致用例数量爆炸式增长,例如N个状态节点,假设每个节点都能通过操作跳转至其他节点,实际上形成了N阶完全图,那么对于任意两点的用户操作序列有1+(n-2)+(n-2)×(n-3)+(n-2)×(n-3)×(n-4)+……+1×2×3×……(n-4)×(n-3)×(n-2)种(记为M);进一步地,考虑用户实际操作轨迹是允许存在环的,例如节点A到节点C的路径可以是A->C,也可以是A->B->C,还可以是A->B->A->C,那么实际可行序列将会远大于M。因此,该方法实际运用时会因为生成的用例过多而无法执行,并且生成的用例中有些用例本身就是错误或无效的,若按错误用例进行测试,造成资源浪费。
技术实现思路
本专利技术实施例提供一种测试用例生成方法、装置、设备及存储介质,以解决现有技术中生成错误测试用例以及生成过多测试用例导致无法执行的问题。第一方面,本专利技术实施例提供了一种测试用例生成方法,包括:获取终端上的用户行为数据,并对所述用户行为数据进行去噪处理;根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例。第二方面,本专利技术实施例还提供了一种测试用例生成装置,包括:数据处理模块,用于获取终端上的用户行为数据,并对所述用户行为数据进行去噪处理;模型生成模块,用于根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;测试用例生成模块,用于基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例。第三方面,本专利技术实施例还提供了一种设备,所述设备包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例所述的测试用例生成方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任意实施例所述的测试用例生成方法。本专利技术实施例对获取的用户行为数据进行去噪处理,去除无效数据和错误数据,进而可以提高生成的测试用例的准确性,避免资源浪费;对用户历史行为数据进行挖掘,得到页面预测模型及页面跳转与用户操作的对应关系,据此预测用户可能的操作,执行对应的自动化用例,能够大大缩减用例数量,保证用例的可实施性。另外,通过引入扩展页面和环路出现次数阈值,实现预测与真实用户操作之间的一个平衡点,能够减少因预测不准造成的生成用例失败,同时能够补充用例集。附图说明图1是本专利技术实施例一提供的测试用例生成方法的流程图;图2是本专利技术实施例二提供的连续误点数据过滤的流程图;图3是本专利技术实施例二提供的无效数据过滤的流程图;图4是本专利技术实施例二提供的无效数据过滤的示意图;图5是本专利技术实施例三提供的测试用例生成方法的流程图;图6是本专利技术实施例三提供的用户行为中操作与页面的关系示意图;图7是本专利技术实施例三提供的页面跳转与用户操作的对应关系示意图;图8是本专利技术实施例四提供的测试用例生成方法的流程图;图9是本专利技术实施例五提供的测试用例生成装置的结构框图;图10是本专利技术实施例六提供的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1是本专利技术实施例一提供的测试用例生成方法的流程图,本实施例可适用于自动生成测试用例的情况,该方法可以由测试用例生成装置来执行,该装置可以安装在终端上。如图1所示,该方法包括:S101,获取终端上的用户行为数据,并对用户行为数据进行去噪处理。其中,应用程序服务器可以搜集安装有该应用程序的终端中的用户行为数据,用户行为数据包括:操作时间、操作页面和操作控件等,即用户在什么时间在哪个页面点击了哪个控件。用户从启动应用程序到退出该应用程序的过程中的行为,为该用户的一组行为,可表示为一个会话(Session),每个会话均设置有唯一标识,获取的用户行为数据就是各用户的多组行为。用户行为数据来自用户的真实操作,不排除存在用户误点、误操作的情况,这样的异常行为对测试用例的生成会造成干扰,需要进行去噪处理,以便于数据处理,提高生成的测试用例的准确性。S102,根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系。其中,页面预测模型用于预测当前页面要跳转的下一个页面,输入为当前页面,输出为要跳转的下一页面;页面跳转与用户操作的对应关系用于获取实现页面跳转所需执行的操作。页面预测模型以及页面跳转与用户操作的对应关系,均是基于用户行为的特征得到的,用户行为在页面跳转时具有时序性,在某个页面的具体操作则无明显时序性和关联性。根据应用程序的相关参数(例如页面总数)以及去噪后的用户行为数据,利用预置模型进行深度学习,能够训练得到页面预测模型,本实施例对模型训练过程不进行详细描述,具体可参见现有的模型训练过程。考虑到页面跳转具有时序性,因此可使用LSTM(LongShort-TermMemory,长短期记忆网络)模型。考虑到用户在某个页面的具体操作无明显时序性和关联性,因此可以利用操作的重要程度从中选取一组或多组操作,用于建立页面跳转与用户操作的对应关系。S103,基于页面预测模型及页面跳转与用户操作的对应关系生成测试用例。其中,从初始页面开始,实时利用页面预测模型预测当前页面的第一待跳转页面;根据页面跳转与用户操作的对应关系获取跳转到第一待跳转页面需执行的第一操作;在当前页面执行第一操作,实现页面跳转。将跳转后的页面作为当前页面,重复执行上述页面预测、获取对应操作以及页面跳转的过程,直到无页面可跳转,完成当前测试用例的生成。本实施例的测试用例生成方法,对获取的用户行为数据进行去噪处理,去除无效数据和错误数据,进而可以提高生成的测试用例的准确性,避免资源浪费;对用户历史行为数据进行挖掘,得到页面预测模型及页面跳转与用户操作的对应关系,据此预测用户可能的操作,执行对应的自动化用例,能够大大缩减用例数量,保证用例的可实施性。实施例二本实施例在上述实施例的基础上,提供了去噪处理的实施方式。去噪处理包括以下至少之一:连续误点数据本文档来自技高网...

【技术保护点】
1.一种测试用例生成方法,其特征在于,包括:获取终端上的用户行为数据,并对所述用户行为数据进行去噪处理;根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例。

【技术特征摘要】
1.一种测试用例生成方法,其特征在于,包括:获取终端上的用户行为数据,并对所述用户行为数据进行去噪处理;根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例。2.根据权利要求1所述的方法,其特征在于,所述去噪处理包括以下至少之一:连续误点数据过滤、无效数据过滤和回环误点数据过滤。3.根据权利要求2所述的方法,其特征在于,所述连续误点数据过滤包括:依次读取所述用户行为数据中的每个操作,作为当前操作;比较所述当前操作与上一个操作;若除操作时间之外其余操作信息均相同,则确定所述当前操作是连续误点数据;删除所述连续误点数据。4.根据权利要求2所述的方法,其特征在于,所述无效数据过滤包括:依次读取所述用户行为数据中的每个操作,作为当前操作;比较所述当前操作与预设操作白名单;若所述当前操作属于所述预设操作白名单,则确定所述当前操作是无效数据;删除所述无效数据。5.根据权利要求2所述的方法,其特征在于,所述回环误点数据过滤包括:获取所述用户行为数据中的环路行为,其中所述环路行为是从第一页面跳转回历史页面;确定所述环路行为中在所述第一页面的停留时间;若所述停留时间小于预设阈值,则确定所述环路行为是回环误点数据;删除所述回环误点数据。6.根据权利要求1所述的方法,其特征在于,生成页面跳转与用户操作的对应关系,包括:从所述去噪后的用户行为数据中获取所有页面跳转关系;针对每个页面跳转关系,获取该页面跳转关系所属的所有行为路径,从所述所有行为路径中获取页面跳转前所执行的各组操作;计算每组操作的出现次数,并选取出现次数最大的那组操作,作为所述页面跳转关系对应的用户操作;根据各页面跳转关系及其对应的用户操作,生成所述页面跳转与用户操作的对应关系。7.根据权利要求1所述的方法,其特征在于,基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例,包括:利用所述页面预测模型预测当前页面的第一待跳转页面;根据所述页面跳转与用户操作的对应关系获取跳转到所述第一待跳转页面需执行的第一操作;在所述当前页面执行所述第一操作,实现页面跳转。8.根据权利要求7所述的方法,其特征在于,在利用所述页面预测模型预测当前页面的第一待跳转页面之后,还包括:根据页面跳转关系,在除所述第一待跳转页面之外的页面中随机选取至少一个扩展页面,作为所述当前页面的第二待跳转页面,其中,所述扩展页面的个数不超过预设个数;根据所述页面跳转与用户操作的对应关系获取跳转到所述第二待跳转页面需执行的第二操作;在所述当前页面执行所述第二操作,实现页面跳转。9.根据权利要求1所述的方法,其特征在于,基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例,包括:记录同一测试用例中各环路的出现次数;若有环路的出现次数达到预设次数,则停止所述测试用例的生成过程。10.一种测试用例生成装置,其特征在于,包括:数据处理模块,用于获取终端上的用户行为数据,并对所述用户行为数据进行去噪处理;模型生成模块,用于根据去噪后的用户行为数据,训练得到页面预测模型,并生成页面跳转与用户操作的对应关系;测试用例生成模块,用于基于所述页面预测模型及所述页面跳转与用户操作的对应关系生成测试用例。11.根据权利要求10所述的装置,其特征在于,所述数据处理模块具体用于执行以下至少之一的操作:连续误点数据过滤、无效...

【专利技术属性】
技术研发人员:王辉姚垒
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1