JS单元测试案例生成方法及装置制造方法及图纸

技术编号:25914680 阅读:19 留言:0更新日期:2020-10-13 10:33
本发明专利技术公开了一种JS单元测试案例生成方法及装置,该方法包括:获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序;获取用户指定的所述待生成的JS单元测试案例对应的JS单元测试框架,并确定所述JS单元测试框架对应的预设的语法模板;根据所述语法模板以及所述测试数据生成所述待生成的JS单元测试案例。本发明专利技术提高了前端JS单元测试案例的生成效率,降低了开发人员的技术门槛。

【技术实现步骤摘要】
JS单元测试案例生成方法及装置
本专利技术涉及前端领域,具体而言,涉及一种JS单元测试案例生成方法及装置。
技术介绍
前后端分离是当前软件开发首选的开发模式,前端、后端都有各自独立的开发环境。在开发自测阶段,前端和后端开发环境之间相互独立,而且不会发生任何请求交互,这导致开发人员仅能依赖自己的环境单独开发和自测。如何利用单元测试保证代码质量成为开发人员在这个阶段最关心的问题,避免漏洞推迟到项目后期而导致潜在风险。单元测试是指对软件中的最小可测试单元进行检查和验证。单元测试更适用于对业务逻辑代码的测试,所以单元测试在后端开发中非常流行和普及,而前端开发需要使用浏览器和用户界面组件,编写单元测试案例比起编写业务逻辑代码更加困难,而且自动调起浏览器执行单元测试案例又涉及许多操纵系统层面的技术,这使得单元测试在前端开发中并未普及起来。随着敏捷开发的推动,业界涌现出了许多优秀的JS(JavaScript)单元测试框架,方便开发人员进行浏览器测试和自动化测试。但是,编写业务逻辑代码案例却需要使用这些测试框架的特定语法,编写用户界面代码案例仍需耗费较大精力去构造和设计,在一定程度上提高了开发人员的技术门槛。综上,目前没有合理的解决高效高质量编写前端JS单元测试案例这个问题的方案,因此,如何提供一种新的方案,解决上述技术问题是本领域亟待解决的技术难题。
技术实现思路
本专利技术为了解决上述
技术介绍
中的技术问题,提出了一种JS单元测试案例生成方法及装置。为了实现上述目的,根据本专利技术的一个方面,提供了一种JS单元测试案例生成方法,该方法包括:获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序;获取用户指定的所述待生成的JS单元测试案例对应的JS单元测试框架,并确定所述JS单元测试框架对应的预设的语法模板;根据所述语法模板以及所述测试数据生成所述待生成的JS单元测试案例。可选的,该JS单元测试案例生成方法还包括:获取预设的多种JS单元测试框架各自的语法结构和语义要素;根据所述语法结构和所述语义要素确定所述预设的多种JS单元测试框架各自对应的要素字段;针对每种所述JS单元测试框架,根据每种所述JS代码的代码类型对应的要素字段的组装顺序和填充位置生成每种所述代码类型对应的语法模板,得到每种所述JS单元测试框架各自对应的语法模板。可选的,所述JS代码的代码类型包括:普通变量操作、异步请求发送和用户界面操作。可选的,所述普通变量操作类型的JS代码的输入数据包括:变量名称、数据类型和数据值;所述普通变量操作类型的JS代码的预期输出数据包括:变量名称、数据类型和数据值;所述异步请求发送类型的JS代码的输入数据包括:请求Url、请求数据类型和请求数据值;所述异步请求发送类型的JS代码的预期输出数据包括:响应数据类型和响应数据值;所述用户界面操作类型的JS代码的输入数据包括:HTML元素类型、标识符和事件名称;所述用户界面操作类型的JS代码的预期输出数据包括:变量名称、数据类型和数据值。为了实现上述目的,根据本专利技术的另一方面,提供了一种JS单元测试案例生成装置,该装置包括:测试数据获取单元,用于获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序;语法模板确定单元,用于获取用户指定的所述待生成的JS单元测试案例对应的JS单元测试框架,并确定所述JS单元测试框架对应的预设的语法模板;测试案例生成单元,用于根据所述语法模板以及所述测试数据生成所述待生成的JS单元测试案例。可选的,该JS单元测试案例生成装置还包括:框架数据获取单元,用于获取预设的多种JS单元测试框架各自的语法结构和语义要素;要素字段定义单元,用于根据所述语法结构和所述语义要素确定所述预设的多种JS单元测试框架各自对应的要素字段;语法模板生成单元,用于针对每种所述JS单元测试框架,根据每种所述JS代码的代码类型对应的要素字段的组装顺序和填充位置生成每种所述代码类型对应的语法模板,得到每种所述JS单元测试框架各自对应的语法模板。为了实现上述目的,根据本专利技术的另一方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述JS单元测试案例生成方法中的步骤。为了实现上述目的,根据本专利技术的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述JS单元测试案例生成方法中的步骤。本专利技术的有益效果为:本专利技术通过生成多种JS单元测试框架各自对应的语法模板,用户仅需配置JS单元测试案例除除语法结构外的部分,即测试数据,进而根据用户选择的JS单元测试框架直接生成对应的标准化的前端JS单元测试案例,提高了前端JS单元测试案例的生成效率,也降低了开发人员的技术门槛。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1是本专利技术实施例JS单元测试案例生成方法的第一流程图;图2是本专利技术实施例JS单元测试案例生成方法的第二流程图;图3是本专利技术实施例JS单元测试案例生成装置的第一结构框图;图4是本专利技术实施例JS单元测试案例生成装置的第二结构框图;图5是本专利技术实施例计算机设备示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。本领域内的技术人员应明白,本专利技术的实施例可提供为方法、系统、或计算机程序产品。因此,本专利技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本专利技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设本文档来自技高网
...

【技术保护点】
1.一种JS单元测试案例生成方法,其特征在于,包括:/n获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序;/n获取用户指定的所述待生成的JS单元测试案例对应的JS单元测试框架,并确定所述JS单元测试框架对应的预设的语法模板;/n根据所述语法模板以及所述测试数据生成所述待生成的JS单元测试案例。/n

【技术特征摘要】
1.一种JS单元测试案例生成方法,其特征在于,包括:
获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序;
获取用户指定的所述待生成的JS单元测试案例对应的JS单元测试框架,并确定所述JS单元测试框架对应的预设的语法模板;
根据所述语法模板以及所述测试数据生成所述待生成的JS单元测试案例。


2.根据权利要求1所述的JS单元测试案例生成方法,其特征在于,还包括:
获取预设的多种JS单元测试框架各自的语法结构和语义要素;
根据所述语法结构和所述语义要素确定所述预设的多种JS单元测试框架各自对应的要素字段;
针对每种所述JS单元测试框架,根据每种所述JS代码的代码类型对应的要素字段的组装顺序和填充位置生成每种所述代码类型对应的语法模板,得到每种所述JS单元测试框架各自对应的语法模板。


3.根据权利要求1所述的JS单元测试案例生成方法,其特征在于,所述JS代码的代码类型包括:普通变量操作、异步请求发送和用户界面操作。


4.根据权利要求3所述的JS单元测试案例生成方法,其特征在于,所述普通变量操作类型的JS代码的输入数据包括:变量名称、数据类型和数据值;所述普通变量操作类型的JS代码的预期输出数据包括:变量名称、数据类型和数据值;
所述异步请求发送类型的JS代码的输入数据包括:请求Url、请求数据类型和请求数据值;所述异步请求发送类型的JS代码的预期输出数据包括:响应数据类型和响应数据值;
所述用户界面操作类型的JS代码的输入数据包括:HTML元素类型、标识符和事件名称;所述用户界面操作类型的JS代码的预期输出数据包括:变量名称、数据类型和数据值。


5.一种JS单元测试案例生成装置,其特征在于,包括:
测试数据获取单元,用于获取用户编写的待生成的JS单元测试案例的测试数据,其中,所述测试数据包括:至少一种JS代码、每个JS代码各自对应的输入数据和预期输出数据以及各JS代码的顺序...

【专利技术属性】
技术研发人员:潘玲姜坤杨丹吴成龙
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

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

1