【技术实现步骤摘要】
程序测试方法、装置、计算机设备和存储介质
[0001]本申请涉及软件测试
,特别是涉及一种程序测试方法、装置、计算机设备、存储介质和计算机程序产品。
技术介绍
[0002]自动化测试是当前软件测试
中主流的测试方法,通过计算机生成大量的测试用例,以根据测试用例对Web应用程序、环境变量和网络协议等测试对象进行测试,以记录并解决测试对象中的异常。
[0003]传统技术中,常通过随机生成的测试用例对测试对象进行测试,但是随机生成的测试用例具有极大的随机性,导致这种方式难以覆盖复杂的测试路径。
技术实现思路
[0004]基于此,有必要针对上述技术问题,提供一种能够提高对测试程序的路径覆盖率的程序测试方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005]第一方面,本申请提供了一种程序测试方法。所述方法包括:
[0006]根据目标测试用例队列中的测试用例的字节权重,对所述测试用例的字节进行变异处理,得到所述测试用例的变异测试用例;
[0007]根据所述变异 ...
【技术保护点】
【技术特征摘要】
1.一种程序测试方法,其特征在于,所述方法包括:根据目标测试用例队列中的测试用例的字节权重,对所述测试用例的字节进行变异处理,得到所述测试用例的变异测试用例;根据所述变异测试用例,对待测试程序进行测试,得到所述待测试程序的当前路径覆盖信息;根据所述当前路径覆盖信息,对所述测试用例的字节权重进行更新,并跳转至所述根据目标测试用例队列中的测试用例的字节权重,对所述测试用例的字节进行变异处理,得到所述测试用例的变异测试用例的步骤,直到满足所述待测试程序的预设测试终止条件。2.根据权利要求1所述的方法,其特征在于,所述根据目标测试用例队列中的测试用例的字节权重,对所述测试用例的字节进行变异处理,得到所述测试用例的变异测试用例,包括:根据所述目标测试用例队列中的测试用例的各个字节的字节权重,从所述测试用例的各个字节中确定出目标变异字节;对所述测试用例中的所述目标变异字节进行变异处理,得到所述测试用例的变异测试用例。3.根据权利要求1所述的方法,其特征在于,所述根据所述当前路径覆盖信息,对所述测试用例的字节权重进行更新,包括:在所述待测试程序未触发崩溃,且所述当前路径覆盖信息中携带有新路径覆盖信息的情况下,对所述测试用例的目标变异字节的字节权重进行增加;在所述待测试程序未触发崩溃,且所述当前路径覆盖信息中未携带有所述新路径覆盖信息的情况下,对所述测试用例的目标变异字节的字节权重进行减少。4.根据权利要求3所述的方法,其特征在于,在所述待测试程序未触发崩溃,且所述当前路径覆盖信息中未携带有所述新路径覆盖信息的情况下,对所述测试用例的目标变异字节的字节权重进行减少之后,还包括:获取所述待测试程序的历史路径覆盖信息;根据所述当前路径覆盖信息和所述历史路径覆盖信息之间的差异,确定所述待测试程序的路径覆盖变化率;在所述路径覆盖变化率不满足预设变化率阈值的情况下,对所述待测试程序的路径约束信息进行符号执行,得到所述待测试程序的实际用例,并将所述实际用例作为测试用例存储至所述目标测试用例队列中;在所述路径覆盖变化率满足预设变化率阈值的情况下,跳转至所述根据目标测试用例队列中的测试用例的字节权重,对所述测试用例的字节进行变异处理,得到所...
【专利技术属性】
技术研发人员:商骞,殷俊,毕国耀,甘杨洋,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。