首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到15条相似文献,搜索用时 227 毫秒
1.
软件测试是一种重要的、不可缺少的软件质量保证技术,用于发现和纠正软件中存在的缺陷和错误,但在很多情况下待测程序的预期输出难以确定。蜕变测试技术通过检查程序的多个执行结果之间的关系来测试程序,可以有效地解决上述问题。经过近十年的研究,蜕变测试技术已经在测试过程的优化、与其他验证或测试方法的结合等方面取得了巨大的进展,并被广泛地应用于各个领域中。对当前蜕变测试技术的研究进行了综述,针对已有方法的不足之处,对未来的研究方向进行了展望,包括蜕变测试充分性研究、实用蜕变关系构造技术、实用原始测试用例选取技术、新型软件中蜕变测试技术的研究、蜕变测试工具的开发等。  相似文献   

2.
蜕变测试技术综述   总被引:4,自引:0,他引:4  
软件测试是一种重要的、不可缺少的软件质量保证技术,用于发现和纠正软件中存在的缺陷和错误,但在很多情况下待测程序的预期输出难以确定。蜕变测试技术通过检查程序的多个执行结果之间的关系来测试程序,可以有效地解决上述问题。经过近十年的研究,蜕变测试技术已经在测试过程的优化、与其他验证或测试方法的结合等方面取得了巨大的进展,并被广泛地应用于各个领域中。对当前蜕变测试技术的研究进行了综述,针对已有方法的不足之处,对未来的研究方向进行了展望,包括蜕变测试充分性研究、实用蜕变关系构造技术、实用原始测试用例选取技术、新型软件中蜕变测试技术的研究、蜕变测试工具的开发等。  相似文献   

3.
基于程序路径分析的有效蜕变测试   总被引:6,自引:0,他引:6  
蜕变测试对于预期输出难以构造的程序是实用和高效的.作者在系统研究已有蜕变测试方法和路径分析技术的基础上,首先针对使用二元蜕变关系的测试提出了一组蜕变测试准则,以在多个不同的层次上定义蜕变测试用例集的充分性;然后给出了3种能够生成相应测试用例集的算法;最后通过变异分析的方法证实这些算法的有效性.实验结果表明,蜕变关系和测试准则的选取直接影响到测试的效果,另外,使用蜕变关系全路径覆盖可满足性算法(APCEMsT)可以快速准确地发现待测程序中的错误,而生成的测试用例的数量却比传统技术要少.  相似文献   

4.
为解决蜕变测试中的蜕变关系识别问题,提出一种似然蜕变关系识别方法.根据程序算法层面的数学性质,结合领域知识给出识别输入模式的指导规则;利用SPSS工具从程序输出结果中自动化地挖掘出相应的输出模式,使输出模式的挖掘过程既简单又高效;通过产生新的测试数据来检验输入、输出模式,获得一批有意义的似然蜕变关系.通过常微分方程龙格...  相似文献   

5.
路晓丽  董云卫 《计算机应用》2011,31(7):1756-1758
在面向服务软件的测试过程中,由于在服务发现之前不可知的交互对象和同一个服务可能会有不同实现,往往出现程序执行结果不能提前预知的Oracle问题。为了有效地解决面向服务软件测试中的Oracle问题,基于面向服务架构(SOA)的特点,提出将蜕变测试方法用于面向服务软件的单元测试和集成测试过程中,依据面向服务软件每个服务的自身性质构造蜕变关系,设计蜕变测试类执行测试用例并验证蜕变关系是否保持,如果蜕变关系被违反了,则发现和报告缺陷,从而有效地支持面向服务软件的测试。  相似文献   

6.
图像识别是图像处理的重点研究领域,在测试结果难以判定以及数据集样本类别不平衡的影响下,适用于图像识别系统健壮性以及稳定性的测试技术较为欠缺.为有效测试图像识别系统,本文提出将蜕变测试方法用于图像识别系统的测试过程中,依据生成式对抗网络来生成贴近现实的衍生数据以构建适用于图像识别系统的蜕变关系,引入衍生图像质量验证方法与...  相似文献   

7.
王榕  贲可荣 《计算机科学》2012,39(1):115-119
蜕变测试可以部分解决软件测试中的Oracle问题,其关键步骤和难点是蜕变关系的构造,它将直接影响测试的效果。通过对典型程序测试的案例对蜕变关系的构造进行分析,归纳总结了若干构造蜕变关系的基本准则,并在案例研究中采用变异分析方法验证了构造准则的合理性。提出了蜕变测试与等价类测试结合运用的测试方法,此方法可用于输入空间易于分类的程序。  相似文献   

8.
模型驱动架构中模型转换结果正确与否常常难以判断(即测试Oracle问题),而蜕变测试通过验证多个执行结果之间是否满足蜕变关系可以部分地解决测试Oracle问题。为有效地解决模型转换测试中的Oracle问题,以UML到Java模型转换程序为例,应用蜕变测试,依据转换规则,从增加、删除、修改、替换4个方面设计并构造出一组蜕变关系。最后对待测程序植入在实际测试中常见的两种错误,设计并执行测试用例后验证蜕变关系,发现违反了蜕变关系,暴露出程序缺陷,从而说明了蜕变测试的有效性。  相似文献   

9.
巩敦卫  陈永伟  田甜 《软件学报》2016,27(8):2008-2024
并行程序执行的不确定性,增加了测试的复杂性和难度.研究消息传递并行程序的变异测试,提出其弱变异测试转化方法,以提高该程序变异测试的效率.首先,根据消息传递并行程序包含语句的类型和语句变异之后导致的变化构建相应的变异条件语句;然后,将构建好的所有变异条件语句插入到原程序中,形成新的被测程序,从而将原程序的弱变异测试问题转化为新程序的分支覆盖问题.这样做的好处是,能够利用已有的分支覆盖方法解决变异测试问题.将该方法应用于8个典型的消息传递并行程序测试中,实验结果表明,该方法不但是可行的,也是必要的.  相似文献   

10.
关于蜕变测试和特殊用例测试的实例研究   总被引:5,自引:0,他引:5  
提出了基于蜕变测试方法的集成测试环境MTest,进而为检验蜕变测试方法的能力和效率,以稀疏矩阵乘法程序为例设计了一组实验.该实验基于变异分析技术,分别以mutation score和错误发现率为度量指标,定量地分析和对比了特殊用例测试,以特殊测试用例和随机测试用例为源测试用例的蜕变测试这3种方法的测试能力和效率.该实验可在MTest测试环境下自动完成.实验结果表明,蜕变测试与特殊用例测试之间是互补的,而且就蜕变测试的源测试用例而言,随机测试用例在测试能力和效率上优于特殊测试用例.  相似文献   

11.
神经网络技术在图像处理、文本分析和语音识别等领域取得了令人瞩目的成就,随着神经网络技术应用到一些安全攸关的领域,如何保证这些软件应用的质量就显得尤为重要。基于神经网络技术的软件在开发和编程上和传统软件有着本质的区别,传统测试技术很难直接应用到此类软件中,研究针对神经网络的验证和测试评估技术十分必要。从有效评估和测试神经网络出发,对神经网络验证和测试技术的研究现状进行梳理,分别从验证技术、基于覆盖的测试技术、基于对抗样本的测试技术、融合传统测试技术等方面进行了归纳和分类。对其中一些关键技术的基本思想和实现做了简明扼要的介绍,并列举了一些测试框架和工具,总结了神经网络验证和测试工作面临的挑战,为该领域的研究人员提供参考。  相似文献   

12.
Comprehensive, automated software testing requires an oracle to check whether the output produced by a test case matches the expected behaviour of the programme. But the challenges in creating suitable oracles limit the ability to perform automated testing in some programmes, and especially in scientific software. Metamorphic testing is a method for automating the testing process for programmes without test oracles. This technique operates by checking whether the programme behaves according to properties called metamorphic relations. A metamorphic relation describes the change in output when the input is changed in a prescribed way. Unfortunately, finding the metamorphic relations satisfied by a programme or function remains a labour‐intensive task, which is generally performed by a domain expert or a programmer. In this work, we propose a machine learning approach for predicting metamorphic relations that uses a graph‐based representation of a programme to represent control flow and data dependency information. In earlier work, we found that simple features derived from such graphs provide good performance. An analysis of the features used in this earlier work led us to explore the effectiveness of several representations of those graphs using the machine learning framework of graph kernels, which provide various ways of measuring similarity between graphs. Our results show that a graph kernel that evaluates the contribution of all paths in the graph has the best accuracy and that control flow information is more useful than data dependency information. The data used in this study are available for download at http://www.cs.colostate.edu/saxs/MRpred/functions.tar.gz to help researchers in further development of metamorphic relation prediction methods. Copyright © 2015 John Wiley & Sons, Ltd.  相似文献   

13.
软件错误注入测试技术研究   总被引:10,自引:1,他引:9  
陈锦富  卢炎生  谢晓东 《软件学报》2009,20(6):1425-1443
软件错误注入测试(software fault injection testing,简称SFIT)技术经过近30年的发展,一直是软件测试领域最活跃的研究内容之一.作为一种非传统的测试技术,在提高软件质量、减少软件危害及改进软件开发过程等方面起着重要作用.对软件错误注入测试的研究现状及动态进行了调研,对该领域相关技术进行了归类及介绍,并对当前较为有效的测试框架和原型工具进行了总结,同时介绍了正在研发的基于SFIT技术的构件安全性测试系统CSTS.在认真分析现有技术的基础上,总结了当前软件错误注入测试存在的问  相似文献   

14.
Software testing is a difficult task and testing Web-based applications may be even more difficult, due to the peculiarities of such applications. In the last years, several problems in the field of Web-based applications testing have been addressed by research work, and several methods and techniques have been defined and used to test Web-based applications effectively. This paper will present the main differences between Web-based applications and traditional ones, how these differences impact the testing of the former ones, and some relevant contributions in the field of Web application testing developed in recent years. The focus is mainly on testing the functionality of a Web-based application, even if some discussion about the testing of non-functional requirements is provided too. Some indications about future trends in Web application testing are also outlined in the paper.  相似文献   

15.
In recent years, a variety of encryption algorithms were proposed to enhance the security of software and systems. Validating whether encryption algorithms are correctly implemented is a challenging issue. Software testing delivers an effective and practical solution, but it also faces the oracle problem (that is, under many practical situations, it is impossible or too computationally expensive to know whether the output for any given input is correct). In this paper, we propose a property-based approach to testing encryption programs in the absence of oracles. Our approach makes use of the so-called metamorphic properties of encryption algorithms to generate test cases and verify test results. Two case studies were conducted to illustrate the proposed approach and validate its effectiveness. Experimental results show that even without oracles, the proposed approach can detect nearly 50% inserted faults with at most three metamorphic relations (MRs) and fifty test cases.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号