[发明专利]一种可重复获取测试数据的程序调试方法及装置有效
申请号: | 201910695987.6 | 申请日: | 2019-07-30 |
公开(公告)号: | CN110597705B | 公开(公告)日: | 2023-01-20 |
发明(设计)人: | 苏庆;刘添添;黄剑锋;李小妹 | 申请(专利权)人: | 广东工业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广东广信君达律师事务所 44329 | 代理人: | 杨晓松 |
地址: | 510062 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 重复 获取 测试数据 程序 调试 方法 装置 | ||
1.一种可重复获取测试数据的程序调试方法,其特征在于,包括以下步骤:
进行一趟程序自动测试,保存与测试数据相关的参数,用于在下一趟程序测试时重新获取测试数据;
如果受测试程序的返回值与预期不符,表明受测试程序的功能有异常,则进行程序的检查、修改和重新编译;否则程序测试过程结束;
使用保存的测试数据相关参数重新获取上一趟测试过程中使用的测试数据,再进行下一趟程序测试;
所述的进行一趟程序自动测试,保存与测试数据相关的参数,包括:
在一趟程序自动测试过程中,接受用户的开始运行指令;程序入口位于测试框架程序中,因此此时测试框架程序开始运行,进入生成测试数据阶段;
在调试器中设置一个“测试数据种类标志寄存器”c1,并将其值初始化为0;
如果发生随机数生成函数调用,则将c1赋值为1,并且将随机数函数的返回值保存至一个随机数数列X中,该随机数数列的每一个随机数都对应一个“使用标志寄存器”c2,此时c2赋值为0;
如果发生受测试函数的调用,则表示测试数据已经生成完毕,进入调用受测试程序阶段;此时在调试器中设置一个初始值为0的“受测试程序调用次数计数器”c3,c3加1;
判断当前的测试数据是否需要在下一趟自动测试过程中被重复获取;
当受测试程序执行完毕,返回至测试框架程序后,如果当前测试数据需要被下一趟程序测试所使用,此时终止测试框架程序的运行;否则表明受测试程序已经通过了以当前测试数据为输入的一次程序测试;
如果没有运行至当前测试框架程序的结束指令,则表明继续重新开始本趟程序自动测试中的下一次程序测试,否则结束当前程序自动测试过程。
2.如权利要求1所述的可重复获取测试数据的程序调试方法,其特征在于,所述的判断当前的测试数据是否需要在下一趟自动测试过程中被重复获取,具体方法包括:
当达到以下条件之一时,当前的测试数据是在下一趟自动测试过程中需要被重复获取的:
条件1:依据人机交互方式,收到程序测试员发出的明确的保存当前测试数据的命令;
条件2:达到预设的某项条件;程序测试员在调试器中设定,当测试框架程序检测到的受测试程序的返回值满足某种情况时,则视为受测试程序的功能正常,无需再使用当前测试数据进行重复测试;否则视为受测试程序功能不正常,则在执行下一趟自动测试过程时,需要再次使用当前的测试数据进行重复测试。
3.如权利要求2所述的可重复获取测试数据的程序调试方法,其特征在于,所述的判断当前的测试数据是否需要在下一趟自动测试过程中被重复获取,还包括:
在调试器中设置一个“重复获取测试数据标志寄存器”c4,如果测试数据需要被重复获取,则将c4赋值为1;否则赋值为0。
4.如权利要求2所述的可重复获取测试数据的程序调试方法,其特征在于,所述的使用保存的测试数据相关参数重新获取上一趟测试过程中使用的测试数据,包括:
接受用户的开始调试指令;
开始执行测试框架程序,直至调用受测试程序的次数等于已记录的受测试程序被调用的次数k-1时,程序暂停在调用受测试程序的语句处,等待用户开始进受测试程序的调试;
检查数据种类标志寄存器的c1值,如果:
c1=0,即测试数据是非随机测试数据,此时无需额外操作;
c1=1,即测试数据是随机测试数据,此时测试框架程序需要先获取与上一次执行相同的测试数据,然后再进行第k次受测试程序的调用;
在受测试程序调试过程中,如果出现了满足所述条件1或条件2的情况,则将X中的所有随机数对应的“使用标志寄存器”c2赋值为0,即,将X中所有随机数的使用状态重新设为“未使用”,以供再下一次程序自动测试使用;否则,表明受测试程序已经通过本趟测试,将“重复获取测试数据标志寄存器”c4赋值为0。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东工业大学,未经广东工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910695987.6/1.html,转载请声明来源钻瓜专利网。