消息传递并行程序的弱变异测试

来源 :中国矿业大学 | 被引量 : 0次 | 上传用户:bp0604
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
变异测试是一种有效的软件测试方法,但高昂的测试代价,使其可行性和应用范围受到很大限制。消息传递并行程序是一类应用广泛的并行程序。为了保证该类程序的可靠性,有必要对其实施变异测试。消息传递并行程序不仅包含为数众多的语句类型和通信函数,其执行还具有不确定性和死锁等特征,这使得消息传递并行程序的变异测试异常困难。因此,有必要提出降低该类程序变异测试代价的理论与方法。本文针对消息传递并行程序,分别从弱变异测试转化、变异体约简,以及测试数据生成等3个方面进行研究。首先,提出消息传递并行程序的弱变异测试转化方法,将变异体杀死问题转化为分支覆盖问题。为此,根据消息传递并行程序不同类型的语句,采用针对性的方法构建变异条件语句;在避免程序发生死锁的前提下,将变异条件语句插入原程序中,形成新的被测程序,从而实现消息传递并行程序的弱变异测试转化。该方法将变异体杀死问题转化为分支覆盖问题,为采用结构覆盖方法解决变异测试问题奠定了基础。其次,提出基于占优度的变异体约简方法,减少需要杀死的变异体。为此,定义分支的占优度,并给出各分支之间占优度和各分支被占优度的计算方法,用于分析分支之间的相关关系;基于占优度和被占优度,给出判断冗余变异条件语句真分支的方法,并删除与冗余分支对应的变异体,以得到约简后的变异体。该方法不但能够保证变异测试的有效性,还能够提高变异测试的效率。最后,针对变异测试数据生成问题,提出基于遗传算法的消息传递并行程序变异测试数据自动生成方法,以高效生成变异测试数据。为此,基于消息传递并行程序弱变异测试转化后的新程序,建立分支覆盖测试数据生成问题的数学模型;采用遗传算法求解该模型,以生成消息传递并行程序的变异测试数据。该方法能够有效提高变异测试数据生成的效率。本文提出的方法,提高了消息传递并行程序变异测试的效率,扩大了变异测试的应用范围,具有重要的理论意义和实用价值。
其他文献
当前印制行业纸币生产中检封车间小张产品的数字管理使用的是机械式的小张数数机计数,这种计数方式有噪声大、对纸币有损伤等缺点。基于数字图像处理技术的纸币非接触成像计
作为企业计划层与现场控制层之间的“信息桥梁”,MES(Manufacturing Execution System,制造执行系统)对解决企业管理系统与基础自动化系统之间的“信息断层”问题具有重要的
由于指纹的唯一性、不变性的特点,指纹识别技术成为最可靠、最成熟的生物识别技术,并越来越广泛地应用到各种领域。目前自动指纹识别系统大多是基于PC平台的,但随着时代的发
近空间可变翼飞行器可在近空间区域飞行,它可通过改变机翼外形从而改善飞行器的性能,使飞行器更好的满足任务需求,因此对近空间可变翼飞行器的研究是航空航天领域及控制领域研究
煤矿主通风机作为其通风系统的关键环节之一,具有“矿井肺腑”之称。如何及时发现故障征兆,准确判断风机运行状态,并对出现的故障进行准确的分析,已成为煤矿主通风机故障诊断