测试用例生成方法、装置、电子设备、存储介质及系统与流程
本技术涉及软件测试,具体而言,涉及一种测试用例生成方法、测试用例生成装置、电子设备、计算机可读存储介质及测试用例生成系统。
背景技术:
1、随着软件系统规模持续扩大以及持续集成、持续交付流程的普及,软件测试用例的生成效率和覆盖质量对软件交付稳定性具有较大影响。在复杂业务接口、回归测试和自动化测试平台中,测试用例不仅需要满足接口调用格式,还需要尽可能触达被测程序中不同执行路径,并在执行结果变化时及时调整后续测试方向,以提升测试用例生成过程对被测程序运行状态的适配能力。
2、在现有的测试用例生成方案中,通常采用基于固定模板或者静态规则的自动生成方式。该方案一般先读取接口描述文件或者已有测试脚本模板,再按照预设字段填充规则生成候选测试脚本,随后通过测试执行环境运行候选测试脚本并输出覆盖报告。覆盖报告通常作为测试评估结果保存,用于后续查看被测程序中已经触达的代码区域和未触达的代码区域。
3、然而,上述方案中,测试执行结果与后续生成过程之间缺乏稳定的技术闭环。覆盖报告通常停留在结果展示或者单次评估层面,难以持续参与后续用例生成方向的调整;同时,接口格式约束和执行反馈引导容易混在同一生成输入中,导致生成约束内容和反馈引导内容之间缺乏清楚的区块承接关系。由此,在后续生成过程中,候选测试用例容易重复触达已有路径,或者继续生成执行失败特征相近的用例,使测试用例生成过程对被测程序实际执行反馈的适配性较低。
技术实现思路
1、本技术提供一种测试用例生成方法、测试用例生成装置、电子设备、计算机可读存储介质及测试用例生成系统,以至少缓解上述技术问题。
2、一种测试用例生成方法,包括:
3、响应于生成请求,获取被测程序的测试生成依据记录,以生成测试生成上下文;
4、基于测试生成上下文,构建具有区块定位信息的结构化生成提示记录,结构化生成提示记录包括用于承载生成约束内容的第一生成状态区块以及用于承载反馈引导内容的第二生成状态区块;
5、将结构化生成提示记录输入至文本生成服务,得到候选用例批次,并在隔离执行环境中执行候选用例批次,以生成执行反馈记录;
6、根据执行反馈记录相对于测试生成依据记录的差分触达状态,生成提示重构指令,并依据提示重构指令按区块定位信息重构反馈引导内容,以得到重构生成提示记录;
7、将重构生成提示记录再次输入文本生成服务,接收文本生成服务输出的生成返回内容,并对生成返回内容进行可执行格式封装,生成测试用例。
8、本技术还提供一种测试用例生成装置,包括:
9、上下文生成单元,用于响应于生成请求,获取被测程序的测试生成依据记录,以生成测试生成上下文;
10、提示记录构建单元,用于基于测试生成上下文,构建具有区块定位信息的结构化生成提示记录,结构化生成提示记录包括用于承载生成约束内容的第一生成状态区块以及用于承载反馈引导内容的第二生成状态区块;
11、候选执行单元,用于将结构化生成提示记录输入至文本生成服务,得到候选用例批次,并在隔离执行环境中执行候选用例批次,以生成执行反馈记录;
12、提示重构单元,用于根据执行反馈记录相对于测试生成依据记录的差分触达状态,生成提示重构指令,并依据提示重构指令按区块定位信息重构反馈引导内容,以得到重构生成提示记录;
13、用例封装单元,用于将重构生成提示记录再次输入文本生成服务,接收文本生成服务输出的生成返回内容,并对生成返回内容进行可执行格式封装,生成测试用例。
14、本技术还提供一种电子设备,包括处理器和存储器,存储器中存储有计算机指令,处理器用于读取并执行计算机指令,以实现上述任一项测试用例生成方法。
15、本技术还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,计算机指令被处理器执行时实现上述任一项测试用例生成方法。
16、本技术还提供一种测试用例生成系统,包括前端设备和后端云服务器,前端设备与后端云服务器通信连接;
17、前端设备用于执行如下步骤:接收针对被测程序的生成请求;将生成请求发送至后端云服务器;接收后端云服务器返回的测试用例;展示测试用例;
18、后端云服务器用于执行如下步骤:响应于生成请求,获取被测程序的测试生成依据记录,以生成测试生成上下文;基于测试生成上下文,构建具有区块定位信息的结构化生成提示记录,结构化生成提示记录包括用于承载生成约束内容的第一生成状态区块以及用于承载反馈引导内容的第二生成状态区块;基于结构化生成提示记录生成候选用例批次,并在隔离执行环境中执行候选用例批次,以生成执行反馈记录;根据执行反馈记录相对于测试生成依据记录的差分触达状态生成提示重构指令,并依据提示重构指令按区块定位信息重构反馈引导内容,以得到重构生成提示记录;基于重构生成提示记录生成生成返回内容,并对生成返回内容进行可执行格式封装,以生成测试用例;将测试用例返回至前端设备。
19、本技术提供的技术方案的技术好处:
20、针对现有测试用例生成方案中测试执行结果与后续生成过程缺乏稳定技术闭环的问题,本技术通过响应于生成请求获取被测程序的测试生成依据记录,以生成测试生成上下文,并基于测试生成上下文构建具有区块定位信息的结构化生成提示记录,使后续生成过程具有可被定位和重构的提示承载基础。相较于将执行结果作为单次覆盖报告保存的传统处理方式,结构化生成提示记录中的第一生成状态区块用于承载生成约束内容,第二生成状态区块用于承载反馈引导内容,使生成约束内容和反馈引导内容在技术结构上形成分区承载关系,从而使接口格式约束和执行反馈引导在后续重构过程中具有较清楚的更新边界,有助于降低不同类型提示内容混杂导致的生成方向漂移。
21、针对现有方案中覆盖报告难以参与下一轮生成方向调整的问题,本技术将结构化生成提示记录输入至文本生成服务以得到候选用例批次,并在隔离执行环境中执行候选用例批次,以生成执行反馈记录。随后,根据执行反馈记录相对于测试生成依据记录的差分触达状态生成提示重构指令,使候选用例批次的执行结果能够转化为后续提示内容重构的依据。相较于仅在执行后输出覆盖统计结果的方式,差分触达状态将执行反馈记录和测试生成依据记录建立比较关系,使已经触达和新触达的执行情况能够参与后续生成方向调整,由此提高测试用例生成过程对被测程序实际执行状态的适配性。
22、针对现有方案中候选测试用例容易重复触达已有路径或者延续执行失败输入特征的问题,本技术依据提示重构指令按区块定位信息重构反馈引导内容,以得到重构生成提示记录。由于提示重构指令来源于执行反馈记录相对于测试生成依据记录的差分触达状态,重构生成提示记录能够在保留生成约束内容的同时,对反馈引导内容进行更新。相较于固定提示或者固定模板的生成方式,本技术通过区块定位信息对反馈引导内容进行可定位重构,使文本生成服务在再次生成时能够基于更新后的反馈引导内容生成返回内容,从而使下一轮生成较少依赖单次静态输入,对重复触达和失败回避具有较好的引导能力。
23、针对现有方案中生成结果难以直接进入自动化测试执行流程的问题,本技术将重构生成提示记录再次输入文本生成服务,接收文本生成服务输出的生成返回内容,并对生成返回内容进行可执行格式封装,生成测试用例。相较于仅输出自然语言或松散脚本片段的生成方式,可执行格式封装使生成返回内容被转换为符合被测程序运行接口的测试用例,有助于提高测试用例在自动化测试系统或持续集成流程中的可用性。同时,通过“生成—执行—反馈—重构—再生成—封装”的闭环处理方式,本技术能够在不改变文本生成服务内部参数的情况下,使执行反馈持续参与测试用例生成过程,从而改善测试用例生成的持续演进能力。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com