自动化测试方法、系统、电子设备及计算机可读存储介质技术方案

技术编号:32340897 阅读:11 留言:0更新日期:2022-02-16 18:49
本申请提供一种自动化测试方法、系统、电子设备及计算机可读存储介质,方法包括:脚本解析器判断测试脚本中当前的待执行命令中,是否有存在目标关键字;若存在,将待执行命令中的需调用函数名和参数传输给自动化测试框架;自动化测试框架根据需调用函数名和参数,从预设的自定义函数存放区中,调用待执行命令对应的目标自定义函数;自定义函数存放区独立于自动化测试框架以外,用于存放自定义函数;不同的自定义函数用于实现不同的功能。该方案解决了相关技术存在着的功能单一,不能满足日益丰富的实际测试需求的问题。且可以使测试人员只维护的测试脚本及自定义函数,而自动化测试框架则由框架维护人员来维护,保证了自动化测试框架的稳定性。框架的稳定性。框架的稳定性。

【技术实现步骤摘要】
自动化测试方法、系统、电子设备及计算机可读存储介质


[0001]本申请涉及软件测试
,具体而言,涉及一种自动化测试方法、系统、电子设备及计算机可读存储介质。

技术介绍

[0002]在软件测试行业中,每个测试执行过程均由测试工程师根据测试用例进行测试覆盖。首轮测试结束后,将用自动化测试框架编写测试脚本,在后续测试过程,将重复性的测试工作由测试脚本自动执行。如有脚本运行失败,则表明测试用例执行失败,测试人员需定位并汇报问题单,然后跟踪解决此问题。
[0003]在当前的测试过程中,自动化测试框架仅支持代替手工测试执行,向测试设备发送测试命令,通过回显验证是否有期待结果存在。但是,该自动化测试框架功能单一,欠缺灵活性,并不能满足日益丰富的实际测试需求。比如,该自动化测试框架不能支持字段级的验证。

技术实现思路

[0004]本申请实施例的目的在于提供一种自动化测试方法、系统、电子设备及计算机可读存储介质,用以解决相关技术存在着的功能单一,不能满足日益丰富的实际测试需求的问题。
[0005]本申请实施例提供了一种自动化测试方法,包括:脚本解析器判断测试脚本中当前的待执行命令中,是否有存在目标关键字;若存在,将所述待执行命令中的需调用函数名和参数传输给自动化测试框架;所述自动化测试框架根据所述需调用函数名和所述参数,从预设的自定义函数存放区中,调用所述待执行命令对应的目标自定义函数;所述自定义函数存放区独立于所述自动化测试框架以外,用于存放自定义函数;不同的自定义函数用于实现不同的功能。/>[0006]在上述实现过程中,通过在独立于自动化测试框架以外的自定义函数存放区中,存放自定义函数,并且通过自动化测试框架来根据待执行命令中的需调用函数名和参数,来调用相应的自定义函数进行执行。这就使得在实际应用过程中,若需要实现某些自动化测试框架无法满足的测试需求,只需要预先定义好相应的自定义函数,并在测试脚本中配置好相关命令即可,解决了相关技术存在着的功能单一,不能满足日益丰富的实际测试需求的问题。比如,为了实现字段级的验证,可以通过预先定义好获取并比较相关字段的自定义函数,并在测试脚本的相关命令中指示需要调用该自定义函数即可。
[0007]此外,本申请实施例所提供的方案,由于自定义函数存放区独立于自动化测试框架以外,因此对于自定义函数的维护和修改权限,可以和自动化测试框架的维护和修改权限相独立,从而可以使得测试人员只维护的测试脚本及自定义函数,而自动化测试框架则由专业的框架维护人员来维护,保证了自动化测试框架的稳定性。
[0008]进一步地,所述自动化测试框架根据所述需调用函数名和所述参数,从预设的自
定义函数存放区中,调用所述待执行命令对应的目标自定义函数,包括:所述自动化测试框架将所述需调用函数名和参数,转换为所述自动化测试框架所能识别的共通函数名和第一格式的参数;将所述共通函数名和第一格式的参数转换为所述目标自定义函数所能识别的第二格式的参数组;所述参数组包括所述需调用函数名和所述参数;根据所述第二格式的参数组,从预设的自定义函数存放区中,调用所述待执行命令对应的目标自定义函数。
[0009]需要说明的是,在实际应用过程中,脚本语言中的需调用函数名和参数的格式与自动化测试框架所需的格式,以及与自定义函数所需的格式可能有所不同。在上述实现过程中,通过进行需调用函数名和参数的格式转换,可以使得自动化测试框架可以识别出相应的需调用函数名,进而有效调用到相应的目标自定义函数,并可以将参数转换为目标自定义函数所能识别的第二格式的参数,从而保证目标自定义函数得以正常执行。
[0010]进一步地,所述方法还包括:所述自动化测试框架接收所述目标自定义函数返回的执行结果;将所述执行结果保存至预设的数据仓库中。
[0011]应理解,目前的自动化测试框架仅会判断整个测试脚本运行完毕后的测试结果是否满足阈值,并不会保存测试过程中的过程中数据,目前的自动化测试框架在执行测试脚本的过程中,后续的测试不能得到前面的命令中的信息,从而无法依赖前面命令的信息执行后续测试。而在上述实现过程中,通过设置数据仓库,并将目标自定义函数返回的执行结果保存至预设的数据仓库中,这就使得在后续的测试过程中,可以获取到之前执行的各命令的相关执行结果数据,从而可以达到更为可靠的测试效果,满足更为丰富的测试需求。
[0012]进一步地,在所述自动化测试框架获取测试脚本中当前的待执行命令之前,所述方法还包括:所述脚本解析器判断所述待执行命令中是否存在变量;在存在变量时,所述脚本解析器从所述数据仓库中获取所述变量的变量值,采用所述变量值替换所述变量。
[0013]在上述实现过程中,通过脚本解析器预先从数据仓库中获取变量的变量值进行替换,从而使得测试脚本中可以不预先写好变量值,通过调用数据仓库中预先写好的值或者之前被执行的命令所产生的执行结果值,实现后续测试,从而可以降低测试脚本的编写复杂度,同时也可以实现更为灵活的测试需求。
[0014]进一步地,在所述测试脚本中的所有命令均执行完毕后,清空所述数据仓库中与所述测试脚本相关的所有数据。
[0015]在上述实现过程中,在测试脚本中的所有命令均执行完毕后,清空数据仓库中与该测试脚本相关的所有数据,这就保证了数据的安全性,降低了资源泄露风险。
[0016]本申请实施例还提供了一种自动化测试系统,包括:脚本解析器、自动化测试框架和自定义函数;所述自定义函数存放于预设的自定义函数存放区中,所述自定义函数存放区独立于所述自动化测试框架以外;不同的自定义函数用于实现不同的功能;所述脚本解析器用于判断所述待执行命令中是否有存在目标关键字,并在存在时,将所述待执行命令中的需调用函数名和参数传输给自动化测试框架;所述自动化测试框架用于根据所述需调用函数名和所述参数,从所述自定义函数存放区中,调用所述待执行命令对应的目标自定义函数。
[0017]上述自动化测试系统,通过在独立于自动化测试框架以外的自定义函数存放区中,存放自定义函数,并且通过自动化测试框架来根据待执行命令,调用相应的自定义函数进行执行,这就使得在实际应用过程中,若需要实现某些自动化测试框架无法满足的测试
需求,只需要预先定义好相应的自定义函数,并在测试脚本中配置好相关命令即可,解决了相关技术存在着的功能单一,不能满足日益丰富的实际测试需求的问题。此外,上述自动化测试系统,由于自定义函数存放区独立于自动化测试框架以外,因此对于自定义函数的维护和修改权限,可以和自动化测试框架的维护和修改权限相独立,从而可以使得测试人员只维护的测试脚本及自定义函数,而自动化测试框架则由专业的框架维护人员来维护,保证了自动化测试框架的稳定性。
[0018]进一步地,所述自动化测试系统还包括:数据仓库,与所述自动化测试系统连接;所述数据仓库用于接收并保存所述自动化测试系统传来的所述目标自定义函数的执行结果。
[0019]在上述自动化测试系统中,通过设置数据仓库,将目标自定义函数返回的执行结果保存至本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括:脚本解析器判断测试脚本中当前的待执行命令中,是否有存在目标关键字;若存在,将所述待执行命令中的需调用函数名和参数传输给自动化测试框架;所述自动化测试框架根据所述需调用函数名和所述参数,从预设的自定义函数存放区中,调用所述待执行命令对应的目标自定义函数;所述自定义函数存放区独立于所述自动化测试框架以外,用于存放自定义函数;不同的自定义函数用于实现不同的功能。2.如权利要求1所述的自动化测试方法,其特征在于,所述自动化测试框架根据所述需调用函数名和所述参数,从预设的自定义函数存放区中,调用所述待执行命令对应的目标自定义函数,包括:所述自动化测试框架将所述需调用函数名和参数,转换为所述自动化测试框架所能识别的共通函数名和第一格式的参数;将所述共通函数名和第一格式的参数转换为所述目标自定义函数所能识别的第二格式的参数组;所述参数组包括所述需调用函数名和所述参数;根据所述第二格式的参数组,从预设的自定义函数存放区中,调用所述待执行命令对应的目标自定义函数。3.如权利要求1或2所述的自动化测试方法,其特征在于,所述方法还包括:所述自动化测试框架接收所述目标自定义函数返回的执行结果;将所述执行结果保存至预设的数据仓库中。4.如权利要求3所述的自动化测试方法,其特征在于,在所述脚本解析器判断测试脚本中当前的待执行命令中,是否有存在目标关键字之前,所述方法还包括:所述脚本解析器判断所述待执行命令中是否存在变量;在存在变量时,所述脚本解析器从所述数据仓库中获取所述变量的变量值,采用所述变量值替换所述变量。5.如权利要求3所述的自动化测试方法,其特征在于,在所述测试脚本中的所有命令均执行完毕后,清空所述数据仓库中与所述测试...

【专利技术属性】
技术研发人员:张宇
申请(专利权)人:北京天融信科技有限公司北京天融信软件有限公司
类型:发明
国别省市:

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

1