[发明专利]单元测试方法、装置、计算机设备及存储介质在审
申请号: | 202011639225.3 | 申请日: | 2020-12-31 |
公开(公告)号: | CN112631942A | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 蔡鹏 | 申请(专利权)人: | 广州华多网络科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 周清华 |
地址: | 511400 广东省广州市番禺区南村镇万*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 单元测试 方法 装置 计算机 设备 存储 介质 | ||
本申请公开了一种单元测试方法、装置、计算机设备及存储介质,属于计算机技术领域。该方法包括:在目标应用程序中确定待进行单元测试的第一程序单元;在该第一程序单元包括的各个目标程序单元中确定第二程序单元,该目标程序单元为该第一程序单元在运行过程中所需调用的程序单元;确定该第二程序单元对应的目标虚拟程序单元,该目标虚拟程序单元用于在单元测试过程中模拟该第二程序单元;利用该目标虚拟程序单元替换该第一程序单元中的该第二程序单元,并在替换后,调用单元测试方法对该第一程序单元进行单元测试。本申请实施例提供的技术方案能够避免单元测试失败。
技术领域
本申请涉及计算机技术领域,特别是涉及一种单元测试方法、装置、计算机设备及存储介质。
背景技术
单元测试指的是对应用程序中的最小可测试的程序单元进行测试的一种软件测试方法,在实际应用中,该最小可测试的程序单元可以为函数、类等。在实际应用中,应用程序中的程序单元在运行过程中往往需要调用其他的程序单元,因此,单元测试必须考虑这种调用关系,为此,在一些测试场景中,可以在单元测试的过程中创建虚拟程序单元,以利用创建的虚拟程序单元来模拟被测试程序单元需要调用的程序单元,从而基于被测试程序单元对虚拟程序单元的调用来完成单元测试。
然而,在一些软件框架中,应用程序中程序单元所需调用的程序单元往往是在应用程序启动的过程中自动创建的,而虚拟程序单元是在单元测试程序启动的过程中创建的。
受创建先后顺序的影响,很可能出现被测试程序单元不对虚拟程序单元进行调用,而对在应用程序启动过程中自动创建的程序单元进行调用的情况,发生这种情况,就会导致单元测试失败。
发明内容
基于此,本申请实施例提供了一种单元测试方法、装置、计算机设备及存储介质,可以避免单元测试失败。
第一方面,提供了一种单元测试方法,该方法包括:
在目标应用程序中确定待进行单元测试的第一程序单元;在该第一程序单元包括的各个目标程序单元中确定第二程序单元,该目标程序单元为该第一程序单元在运行过程中所需调用的程序单元;确定该第二程序单元对应的目标虚拟程序单元,该目标虚拟程序单元用于在单元测试过程中模拟该第二程序单元;利用该目标虚拟程序单元替换该第一程序单元中的该第二程序单元,并在替换后,调用单元测试方法对该第一程序单元进行单元测试。
在其中一个实施例中,在该第一程序单元包括的各个目标程序单元中确定第二程序单元,包括:
获取该第一程序单元对应的测试模拟程序单元标识集,该测试模拟程序单元标识集包括需要在单元测试过程中被模拟的至少一个目标程序单元的标识;根据该测试模拟程序单元标识集在该第一程序单元包括的各个目标程序单元中确定该第二程序单元。
在其中一个实施例中,确定该第二程序单元对应的目标虚拟程序单元,包括:
根据目标标记符在上下文中查找带有该目标标记符的虚拟程序单元;将带有该目标标记符的虚拟程序单元作为该目标虚拟程序单元。
在其中一个实施例中,该第二程序单元为多个,该目标虚拟程序单元为多个,利用该目标虚拟程序单元替换该第一程序单元中的该第二程序单元,包括:
对于各第二程序单元,从多个目标虚拟程序单元中确定所带目标标记符与该第二程序单元匹配的目标虚拟程序单元,并利用确定的该目标虚拟程序单元替换该第二程序单元。
在其中一个实施例中,在该第一程序单元包括的各个目标程序单元中确定第二程序单元,包括:
在上下文中查找虚拟程序单元,并获取查找到的虚拟程序单元的类型;根据查找到的虚拟程序单元的类型,在该第一程序单元包括的各个目标程序单元中查找该第二程序单元,其中,该第二程序单元的类型与查找到的任一虚拟程序单元的类型相同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州华多网络科技有限公司,未经广州华多网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011639225.3/2.html,转载请声明来源钻瓜专利网。