自动化测试工具及其实现方法、装置、终端和存储介质制造方法及图纸

技术编号:33787528 阅读:8 留言:0更新日期:2022-06-12 14:43
本发明专利技术公开了一种自动化测试工具及其实现方法、装置、终端和存储介质,该方法包括:检查并安装前端react框架hook组件自动化测试所需要的文件;hook组件中有N个hook文件;根据每一个hook文件,生成一个自动化测试案例代码;根据所有hook文件,生成所有hook文件的自动化测试案例代码;确定每个测试案例的动态值;将所有测试案例关联的动态值,进行页面可视化展示。该方案,通过设置前端react框架hook组件自动化测试工具,在开发者在完成代码后,使用该工具,可以生成hook组件的自动化测试代码,可以降低人工成本和维护成本。以降低人工成本和维护成本。以降低人工成本和维护成本。

【技术实现步骤摘要】
自动化测试工具及其实现方法、装置、终端和存储介质


[0001]本专利技术属于计算机
,具体涉及一种自动化测试工具及其实现方法、装置、终端和存储介质,尤其涉及一种前端react框架hook组件自动化测试工具及其实现方法、装置、终端和存储介质。

技术介绍

[0002]一个前端项目,随着产品需求的不断迭代,前端的代码量变得越来越庞大。为了减少代码量以及将相同或类似的功能的代码尽可能进行复用,在当前主流框架react中,是将其做成hook组件形式,提供给不同的场景、不同的开发者进行调用。
[0003]但是,如果一个hook组件是复杂的hook组件,那么这个hook组件在遇到需要针对新的需求进行改造的过程中,会显得捉襟见肘,因为改造的过程中,需要保证原有使用方的使用场景是正常的,不能因为对于A使用场景的改造,影响到B使用场景的功能。这种情况下,引入自动化测试就变得十分重要。
[0004]这样,引入并加入自动化测试,在代码改造完成后,通过执行原有所有场景的自动化测试案例,根据得到的结果,就可以知道改造后的代码是否能够完美兼容原有功能逻辑。
[0005]但是,项目引入并加入自动化测试,会存在成本高的问题。
[0006]比如,自动化测试代码的编写需要具备相当语法的知识储备,自动化测试案例,如果需要调整,只有开发人员可以修改代码进行调整,存在人工成本高的问题。
[0007]又如,自动化测试代码需要长期维护,当有新的需求新增,或原来的组件需要在某些场景下进行修改时,自动化测试的代码需要进行新增测试案例代码,依然存在人工成本高的问题,维护成本也越来越高。
[0008]上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。

技术实现思路

[0009]本专利技术的目的在于,提供一种自动化测试工具及其实现方法、装置、终端和存储介质,以解决前端react框架hook组件,在代码改造完成后,在测试改造后的代码是否能够完美兼容原有功能逻辑时,引入并加入自动化测试,存在人工成本和维护成本高的问题,达到通过设置前端react框架hook组件自动化测试工具,在开发者在完成代码后,使用该工具,可以生成hook组件的自动化测试代码,可以降低人工成本和维护成本的效果。
[0010]本专利技术提供一种自动化测试工具的实现方法中,所述自动化测试工具,包括:前端react框架hook组件自动化测试工具;所述前端react框架hook组件自动化测试工具的实现方法,包括:检查并安装前端react框架hook组件自动化测试所需要的文件,并在执行前端react框架hook组件自动化测试时执行前端react框架hook组件自动化测试代码的存放目录下的测试文件;所述前端react框架hook组件中,具有N个hook文件,N为正整数;根据前端react框架hook组件中每一个hook文件,生成一个自动化测试案例代码;根据前端react框
架hook组件中所有hook文件,生成所有hook文件的自动化测试案例代码;针对所述所有自动化测试案例代码所对应的每个测试案例,确定每个测试案例的动态值;将所有测试案例关联的动态值,进行页面可视化展示;所展示的可视化页面,是能够对所有hook文件的自动化测试案例代码中任一测试案例直接编辑修改的页面。
[0011]在一些实施方式中,检查并安装前端react框架hook组件自动化测试所需要的文件,并在执行前端react框架hook组件自动化测试时执行前端react框架hook组件自动化测试代码的存放目录下的测试文件,包括:检查并安装前端react框架hook组件自动化测试所需要的依赖文件;设置前端react框架hook组件自动化测试代码的存放目录,以存放生成的前端react框架hook组件自动化测试代码;设置配置项,以在执行前端react框架hook组件自动化测试时,索引该配置项中前端react框架hook组件自动化测试代码的存放目录下的测试文件,并执行该测试文件。
[0012]在一些实施方式中,根据前端react框架hook组件中每一个hook文件,生成一个自动化测试案例代码,包括:根据预先设置的配置项中配置的需要进行自动化测试的hook组件地址的数组,遍历数组中的每一个元素,找到与数组中的每一个元素对应的每一个hook文件,作为需要进行自动化测试的每一个hook文件;针对需要进行自动化测试的每一个hook文件,执行生成自动化测试案例代码的操作,生成需要进行自动化测试的每一个hook文件的基础代码;根据需要进行自动化测试的每一个hook文件的基础代码,识别不同场景语法,智能反向推导期望结果,并生成需要进行自动化测试的每一个hook文件的代码,作为需要进行自动化测试的每一个hook文件所对应的测试案例代码。
[0013]在一些实施方式中,针对需要进行自动化测试的每一个hook文件,执行生成自动化测试案例代码的操作,生成需要进行自动化测试的每一个hook文件的基础代码,包括:创建前端react框架hook组件自动化测试代码的存放目录,在该存放目录所在文件夹中,生成与需要进行自动化测试的每一个hook文件对应的空白文件;通过第一设定语法,将未经模拟的hook组件、模拟hook组件渲染完成的方法renderHook、模拟触发hook组件对外暴露函数的act方法,引入到需要进行自动化测试的每一个hook文件中;通过第二设定语法,将即将生成的需要进行自动化测试的每一个hook文件所对应的测试案例包裹起来,以得到需要进行自动化测试的每一个hook文件的基础代码。
[0014]在一些实施方式中,所述根据需要进行自动化测试的每一个hook文件的基础代码,识别不同场景语法,智能反向推导期望结果,并生成需要进行自动化测试的每一个hook文件的代码,作为需要进行自动化测试的每一个hook文件所对应的测试案例代码,包括:针对未经模拟的hook组件,在函数最后有通过return关键字对外输出的变量中,通过对变量进行typeof判断,如果得出的结果是'function',则反向查找未经模拟的hook组件的hook代码中,关于所述函数的函数名的完整代码块在未经模拟的hook组件的hook代码的代码块内对于所述变量的操作,以反向推导出变量执行的案例和结果;若在未经模拟的hook组件内出现useEffect函数,则确定未经模拟的hook组件的hook文件内有依赖更新事件,对hook组件内依赖更新事件进行模拟,得到自动化测试代码;并在所述自动化测试代码已被修改的情况下,通过所述自动化测试代码被修改后的依赖变量的值,来模拟触发更新事件的执行。
[0015]在一些实施方式中,将所有测试案例关联的动态值,进行页面可视化展示,包括:
当所有测试案例生成完成后,将所有测试案例关联的动态值,生成一个页面展示文件;通过执行设定命令,浏览器访问页面地址,打开该页面;在页面上,展示包含所有hook组件名称、以及每一个组件的所有测试案例描述列表的内容。
[0016]与上述方法相匹配,本专利技术另一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动化测试工具的实现方法,其特征在于,所述自动化测试工具,包括:前端react框架hook组件自动化测试工具;所述前端react框架hook组件自动化测试工具的实现方法,包括:检查并安装前端react框架hook组件自动化测试所需要的文件,并在执行前端react框架hook组件自动化测试时执行前端react框架hook组件自动化测试代码的存放目录下的测试文件;所述前端react框架hook组件中,具有N个hook文件,N为正整数;根据前端react框架hook组件中每一个hook文件,生成一个自动化测试案例代码;根据前端react框架hook组件中所有hook文件,生成所有hook文件的自动化测试案例代码;针对所述所有自动化测试案例代码所对应的每个测试案例,确定每个测试案例的动态值;将所有测试案例关联的动态值,进行页面可视化展示;所展示的可视化页面,是能够对所有hook文件的自动化测试案例代码中任一测试案例直接编辑修改的页面。2.根据权利要求1所述的自动化测试工具的实现方法,其特征在于,检查并安装前端react框架hook组件自动化测试所需要的文件,并在执行前端react框架hook组件自动化测试时执行前端react框架hook组件自动化测试代码的存放目录下的测试文件,包括:检查并安装前端react框架hook组件自动化测试所需要的依赖文件;设置前端react框架hook组件自动化测试代码的存放目录,以存放生成的前端react框架hook组件自动化测试代码;设置配置项,以在执行前端react框架hook组件自动化测试时,索引该配置项中前端react框架hook组件自动化测试代码的存放目录下的测试文件,并执行该测试文件。3.根据权利要求2所述的自动化测试工具的实现方法,其特征在于,根据前端react框架hook组件中每一个hook文件,生成一个自动化测试案例代码,包括:根据预先设置的配置项中配置的需要进行自动化测试的hook组件地址的数组,遍历数组中的每一个元素,找到与数组中的每一个元素对应的每一个hook文件,作为需要进行自动化测试的每一个hook文件;针对需要进行自动化测试的每一个hook文件,执行生成自动化测试案例代码的操作,生成需要进行自动化测试的每一个hook文件的基础代码;根据需要进行自动化测试的每一个hook文件的基础代码,识别不同场景语法,智能反向推导期望结果,并生成需要进行自动化测试的每一个hook文件的代码,作为需要进行自动化测试的每一个hook文件所对应的测试案例代码。4.根据权利要求3所述的自动化测试工具的实现方法,其特征在于,所述针对需要进行自动化测试的每一个hook文件,执行生成自动化测试案例代码的操作,生成需要进行自动化测试的每一个hook文件的基础代码,包括:创建前端react框架hook组件自动化测试代码的存放目录,在该存放目录所在文件夹中,生成与需要进行自动化测试的每一个hook文件对应的空白文件;通过第一设定语法,将未经模拟的hook组件、模拟hook组件渲染完成的方法renderHook、模拟触发hook组件对外暴露函数的act方法,引入到需要进行自动化测试的每一个hook文件中;通...

【专利技术属性】
技术研发人员:黄康
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:

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

1