[发明专利]一种软件测试系统及方法在审
申请号: | 202011411362.1 | 申请日: | 2020-12-03 |
公开(公告)号: | CN112395205A | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 王宇龙;刘斌;武伟;文枫;连晓峰;肖锦龙;肖正秀;王琳琳;盛珂;王栓奇;李之博 | 申请(专利权)人: | 中国兵器工业信息中心;北京工商大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62 |
代理公司: | 北京华沛德权律师事务所 11302 | 代理人: | 房德权 |
地址: | 100045 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 测试 系统 方法 | ||
本发明提供了一种软件测试方法,包括:获取用于进行软件测试的待校验软件,并获得初始测试序列和初始输入数据;运行所述待校验软件获得输出数据;记录软件测试过程中的变迁行为,得到测试序列,并根据所述测试序列对输出序列进行预测,得到校验数据;筛选并忽略掉无用的测试序列;判断所述校验数据与所述输出数据是否相同,当所述校验数据与所述输出数据相同时,确定所述待校验软件完整,本发明还提供了一种软件系统。
技术领域
本发明涉及计算机软件领域,尤其涉及一种软件测试系统及方法。
背景技术
并行软件系统的状态数量都非常大,这种情况下,多数测试序列生成方法都很难生成有效的测试例。有的测试方法在状态数过多时将不能使用;有的测试方法在状态数过多时将产生大量无用的测试序列,使测试执行不完或失去意义,因为其状态空间的规模很大,所以传统的不针对并行软件的测试方法很难取得良好的测试效果。而目前出现的针对并行软件的测试方法非常有限,存在两大问题:一是在针对属性的测试方法和基于竞争资源的测试方法中,都存在覆盖率不足的问题,也就是产生的测试序列无法对待测行为进行完全覆盖;二是在采用新的并发覆盖标准的测试方法中,产生大量无用测试序列的问题,虽然达到了覆盖标准,但是测试序列过多,测试不能有效完成,所以,要想解决并行软件的测试问题,必须同时解决上述两大问题。
发明内容
本发明提供了一种软件测试方法能够记录软件测试行为,能够对产生的测试序列进行筛选评估和预测,并采用筛选方法忽略掉无用测试序列,保证测试有效完成。
本发明提供的技术方案为:
一种软件测试方法,包括:
获取用于进行软件测试的待校验软件,并获得初始测试序列和初始输入数据;运行所述待校验软件获得输出数据;
记录软件测试过程中的变迁行为,得到测试序列,并根据所述测试序列对输出序列进行预测,得到校验数据;
筛选并忽略掉无用的测试序列;
判断所述校验数据与所述输出数据是否相同,当所述校验数据与所述输出数据相同时,确定所述待校验软件完整。
优选的是,所述测试序列为运算数据集合,包括:数据取值范围,字符串长度、字符串结构、字符集和字符集构成比例。
优选的是,所述校验数据通过将所述测试序列输入预测模型获得,所述预测模型由如下步骤获得:
获取已有测试序列构建特征集合,并将所述特征集合内测试序列进行替代提取和评估;
并将所述特征集合内的测试序列划分为训练集和验证集两部分;
构建预测模型,将所述训练集输入预测模型,对所述预测模型进行训练,并通过所述验证集验证所述预测模型的准确性,完成所述预测模型的训练。
优选的是,根据权利要求3所述的软件测试方法,其特征在于:所述训练集和所述验证集的划分比例为7:3。
优选的是,所述特征集合内测试序列进行替代提取和评估过程为:
确定滑动窗口,并对所述测试序进行逐字符滑窗,进而确定所述测试序列的平稳性;
利用替换数据对异常测试序列进行替换,所述异常测试序列为不在所述窗口范围内的测试序列数据;所述替换数据为异常测试序列的d次差分。
优选的是,所述预测模型的构建包括如下步骤:
建立时间标度,并将所述时间标度输入所述测试序列,以使所述测试序列与所述变迁次数相对应;
根据所述时间标度,计算每次变迁产生测试序列的变迁系数和优序系数;
计算完成测试时产生的变迁连接权重;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国兵器工业信息中心;北京工商大学,未经中国兵器工业信息中心;北京工商大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011411362.1/2.html,转载请声明来源钻瓜专利网。