首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 125 毫秒
1.
卢炎生  卢超 《计算机科学》2008,35(2):268-273
可达性测试是目前较为成熟的一种并发程序测试方法,该方法解决了如何生成最小完备偏序测试序列集的问题.但研究表明,对于一般规模的并发程序,这一测试序列集仍然太大,以至穷尽测试无法完成.因此,目前亟需能投入实际应用的并发程序测试准则和相应的测试序列生成算法.本文提出了一种实用性较高的并发程序测试准则:全发送接收语句对(ASRSP),并针对该准则提出了一种新的并发程序测试方法:全发送接收语句对可达性测试(ASR-SP-RT).该方法利用可达性测试生成测试序列集的完备性来保证覆盖所有的发送接收语句对,并在每次生成新序列 之后及时去掉对覆盖剩下发送接收语句对无作用的序列,从而达到约简测试序列集的目的.  相似文献   

2.
李丽萍  李兴森 《计算机科学》2013,40(Z11):109-114
鉴于 现有的基于规约的逻辑覆盖测试准则很少考虑到边界情况,对边界值分析法进行形式化,提出了一系列基于模型的逻辑边界覆盖测试准则。结果表明,相对于传统的逻辑覆盖测试准则,满足这些测试准则生成的测试用例能检测出系统更多的错误,既满足相应的逻辑覆盖测试准则,又能检测系统的边界情况。  相似文献   

3.
钱忠胜  缪淮扣 《软件学报》2010,21(7):1536-1549
基于规格说明的测试可以在不需要了解软件程序代码的情况下对软件进行功能测试.判定是形式规格说明中用于描述前、后置条件的主要形式.分析了基于规格说明的逻辑覆盖测试准则,针对已有的决定性逻辑覆盖测试准则的不足,提出了掩盖性逻辑覆盖测试准则,并对其进行了详细分析.提出了掩盖性逻辑覆盖测试准则的一个可行的测试生成算法.根据该准则生成的测试用例能够发现条件的掩盖性带来的错误.然后,从判定的结构入手,分析了条件之间的约束关系、复杂判定的分解与合成、判定之间的关系.这些分别能够阐明逻辑覆盖中条件间的耦合性问题、同一个条件在判定中的多次出现问题以及判定在程序中的位置问题.继而提出了全真判定覆盖、全假判定覆盖、完全子判定覆盖、唯一条件真覆盖以及唯一条件假覆盖等测试准则.满足这些测试准则的测试用例集能检测出不同类型的错误.最后,给出了这些测试准则之间的包含关系图,并建议了不同测试准则适用的应用场景.  相似文献   

4.
基于规格说明的测试可以在不需要了解软件程序代码的情况下对软件进行功能测试.判定是形式规格说明中用于描述前、后置条件的主要形式.分析了基于规格说明的逻辑覆盖测试准则,针对已有的决定性逻辑覆盖测试准则的不足,提出了掩盖性逻辑覆盖测试准则,并对其进行了详细分析.提出了掩盖性逻辑覆盖测试准则的一个可行的测试生成算法.根据该准则生成的测试用例能够发现条件的掩盖性带来的错误.然后,从判定的结构入手,分析了条件之间的约束关系、复杂判定的分解与合成、判定之间的关系.这些分别能够阐明逻辑覆盖中条件间的耦合性问题、同一个条件在判定中的多次出现问题以及判定在程序中的位置问题.继而提出了全真判定覆盖、全假判定覆盖、完全子判定覆盖、唯一条件真覆盖以及唯一条件假覆盖等测试准则.满足这些测试准则的测试用例集能检测出不同类型的错误.最后,给出了这些测试准则之间的包含关系图,并建议了不同测试准则适用的应用场景.  相似文献   

5.
主要针对软件测试中黑盒测试时测试用例集过大,以及测试效率低的问题,提出了一种有用有效的测试用例集生成设计方法.该方法根据待测系统参数的输入输出关系,对输入参数进行分组生成输入参数的组合关系集,再仅对组合关系集中每组输入变量生成两两组合覆盖测试用例集合,然后进行水平拼接生成最终的用于待测系统测试的测试用例集合.实验结果表明,该方法不仅能有效地减少了测试用例数目,而且还能够保持了原来测试检错能力,从而提高测试效率.  相似文献   

6.
测试性试验中样本集的测试覆盖充分性研究   总被引:2,自引:0,他引:2  
石君友  康锐  田仲 《测控技术》2004,23(12):19-21
测试性试验结果的准确性不仅与样本量有关,还与试验中能够激活的测试数量有关.在建立故障模式测试模型的基础上,提出了样本集的测试覆盖充分性度量和准则.给出了模型中要素的确定方法,以及该度量和准则的应用流程.最后通过实例应用说明了测试覆盖充分性度量和准则的可行性.  相似文献   

7.
模型检验输出的反例提供了一种自动产生测试用例的有效途径。提出了一种用模型检验进行构件数据流测试的方法。利用构件状态机描述构件的外部行为,用带有变量定义和使用标记的Kripke结构描述构件状态迁移中的数据流信息;给出了从构件状态机到Kripke结构的转换方法,并建立了全定义覆盖和全使用覆盖准则的陷阱性质构造公式。陷阱性质将使模型检验器NuSMV输出反例,从而产生构件的数据流测试序列。  相似文献   

8.
随着软件的发展,测试技术也在发展。MC/DC即修改条件/判定覆盖,是一种较新的结构覆盖准则,它是在C/DC(条件/判定覆盖)的基础上发展起来的。与其它结构覆盖准则相比,它只是线性地增加了测试用例的数量,使得软件测试更加具有可操作性。而对于测试来说,测试用例的选择和优化是至关重要的。在探讨MC/DC的基础上,利用MC/DC的特点,初步提出了利用MC/DC进行测试集减少的方法,使得减少后的测试集与原测试集对测试需求有着相同或相似的覆盖率,并对此方法的利弊做了一定的分析。  相似文献   

9.
基于通信多端口有限状态机的协议互操作性测试生成研究   总被引:9,自引:0,他引:9  
王之梁  吴建平  尹霞 《计算机学报》2006,29(11):1909-1919
协议测试是一种保证网络通信协议实现质量的重要技术,互操作性测试是一类常用的协议测试技术.文章提出了一种基于通信多端口有限状态机模型的协议互操作忡测试生成方法.首先采用已有的基于可达性分析的方法生成集中式测试序列;然后采用单一错误模型对其进行系统的错误覆盖分析,为达到更高的错误覆盖度,进一步提出一种增强的测试生成算法;最后讨论了互操作性测试巾的控制观察问题,选择适当的分布式测试架构,并进而生成分布式同步测试序列.实验结果表明:与原有方法相比,该方法可以有效地提高测试集的错误覆盖,并具备一定的可行性和有效性.  相似文献   

10.
软件体系结构在软件开发过程中至关重要,其中任何微小错误都会给软件开发及后期维护带来很大麻烦.本文提出一种软件体系结构测试序列生成方法,首先用化学抽象机描述体系结构,然后生成相应的反应规则依赖图RDG,再根据定义的测试覆盖准则及测试序列生成算法,产生软件体系结构测试序列,最后以客户机/服务器体系结构实例说明了导出RDG及生成测试序列的过程.  相似文献   

11.
Test suite minimisation techniques seek to reduce the effort required for regression testing by selecting a subset of test suites. In previous work, the problem has been considered as a single-objective optimisation problem. However, real world regression testing can be a complex process in which multiple testing criteria and constraints are involved. This paper presents the concept of Pareto efficiency for the test suite minimisation problem. The Pareto-efficient approach is inherently capable of dealing with multiple objectives, providing the decision maker with a group of solutions that are not dominated by each other. The paper illustrates the benefits of Pareto efficient multi-objective test suite minimisation with empirical studies of two and three objective formulations, in which multiple objectives such as coverage and past fault-detection history are considered. The paper utilises a hybrid, multi-objective genetic algorithm that combines the efficient approximation of the greedy approach with the capability of population based genetic algorithm to produce higher-quality Pareto fronts.  相似文献   

12.
用遗传算法的测试用例最小化   总被引:1,自引:0,他引:1  
回归测试就是验证对程序的修改是否迭到了预期的目的,同时检查修改是否损害了程序原有的正常功能。随着程序新版本的不断推出,测试用例集不断扩大,回归测试成本越来越高。测试用例最小化就是从已有的用例集中,找到一个测试运行代价最小的用例子集用于回归测试,并保持原来的测试覆盖率。本文主要研究用遗传算法解决测试用例最小化问题:基于测试历史数据,设计基因编码并构建初始种群;利用测试覆盖率和测试运行代价设计适应度函数;通过遗传算子完成进化过程并找到最优或近似最优解。最后本文给出了对算法进行实例研究的结果。结果表明,本文提出的用例最小化技术能有效缩减回归测试用例集,大幅度降低回归测试费用。  相似文献   

13.
软件参数的组合测试是发现参数组合问题的重要方法,但是参数组合测试面临着组合爆炸问题,成对测试可以有效降低测试成本。提出了一种基于遗传算法的成对测试生成方法,该方法用于选择当前局部优化覆盖的测试用例,在此基础上构建满足成对测试基准的测试用例套,结果表明该方法能在不降低测试覆盖精度的情况下有效降低了测试用例数量。  相似文献   

14.
软件测试是软件工程的一个重要组成部分,其目标是能够及时发现软件中的错误,确保软件高质量。测试用例是软件测试的基础,覆盖度较高且精简的测试用例集可以提高测试效率和降低成本。软件测试覆盖标准较多,一个好的测试用例评价指标也存在多种,为了能够在约简测试用例集规模的同时获取较高的测试能力,本文提出了一种基于多优化目标的测试用例集约简算法,该算法旨在根据测试用例需求,构建多优化目标的测试用例模型,使用该模型获取一个最优解的测试用例子集,使用最小化用例集方法最小化测试用例,迭代执行直到测试用例集覆盖所有的测试需求,实验结果表明该算法可以约简测试用例集,获取较高的综合测试效果。  相似文献   

15.
Code‐coverage‐based testing is a widely‐used testing strategy with the aim of providing a meaningful decision criterion for the adequacy of a test suite. Code‐coverage‐based testing is also mandated for the development of safety‐critical applications; for example, the DO178b document requires the application of the modified condition/decision coverage. One critical issue of code‐coverage testing is that structural code coverage criteria are typically applied to source code whereas the generated machine code may result in a different code structure because of code optimizations performed by a compiler. In this work, we present the automatic calculation of coverage profiles describing which structural code‐coverage criteria are preserved by which code optimization, independently of the concrete test suite. These coverage profiles allow to easily extend compilers with the feature of preserving any given code‐coverage criteria by enabling only those code optimizations that preserve it. Furthermore, we describe the integration of these coverage profile into the compiler GCC. With these coverage profiles, we answer the question of how much code optimization is possible without compromising the error‐detection likelihood of a given test suite. Experimental results conclude that the performance cost to achieve preservation of structural code coverage in GCC is rather low. Copyright © 2012 John Wiley & Sons, Ltd.  相似文献   

16.
Software testing is a critical part of software development. As new test cases are generated over time due to software modifications, test suite sizes may grow significantly. Because of time and resource constraints for testing, test suite minimization techniques are needed to remove those test cases from a suite that, due to code modifications over time, have become redundant with respect to the coverage of testing requirements for which they were generated. Prior work has shown that test suite minimization with respect to a given testing criterion can significantly diminish the fault detection effectiveness (FDE) of suites. We present a new approach for test suite reduction that attempts to use additional coverage information of test cases to selectively keep some additional test cases in the reduced suites that are redundant with respect to the testing criteria used for suite minimization, with the goal of improving the FDE retention of the reduced suites. We implemented our approach by modifying an existing heuristic for test suite minimization. Our experiments show that our approach can significantly improve the FDE of reduced test suites without severely affecting the extent of suite size reduction  相似文献   

17.
基于UML状态图测试的充分性准则   总被引:5,自引:1,他引:5  
本文描述了基于UML状态图生成测试用例的充分性准则。在测试时,循环被执行一次是很不充分的,本文提出了使循环分别执行0次、1次、2次,即ZOT循环覆盖准则,在此基础上本文还提出了全ZOT路径覆盖准则,并给出了这些覆盖准则的应用,讨论了这些覆盖准则之间的包含关系。  相似文献   

18.
The term grammar-based software describes software whose input can be specified by a context-free grammar. This grammar may occur explicitly in the software, in the form of an input specification to a parser generator, or implicitly, in the form of a hand-written parser. Grammar-based software includes not only programming language compilers, but also tools for program analysis, reverse engineering, software metrics and documentation generation. Hence, ensuring their completeness and correctness is a vital prerequisite for their use. In this paper we propose a strategy for the construction of test suites for grammar based software, and illustrate this strategy using the ISO C + +  grammar. We use the concept of grammar-rule coverage as a pivot for the reduction of an implementation-based test suite, and demonstrate a significant decrease in the size of this suite. The effectiveness of this reduced test suite is compared to the original test suite with respect to code coverage and more importantly, fault detection. This work greatly expands upon previous work in this area and utilises large scale mutation testing to compare the effectiveness of grammar-rule coverage to that of statement coverage as a reduction criterion for test suites of grammar-based software. This work finds that when grammar rule coverage is used as the sole criterion for reducing test suites of grammar based software, the fault detection capability of that reduced test suite is greatly diminished when compared to other coverage criteria such as statement coverage.
James F. PowerEmail:
  相似文献   

19.
组合测试研究进展   总被引:4,自引:0,他引:4  
组合测试(Interaction Testing)是一种有效的测试用例生成技术,它假设被测系统中的缺陷往往由少数参数间的交互触发,所以可以使用较小规模的测试用例集(Test Suite)完成高质量的软件测试。对目前组合测试的已有工作予以研究,首先通过介绍常见的组合覆盖标准引入组合测试问题;然后总结目前常见的4种组合对象;之后依据生成策略的特征对现有的组合测试技术予以分类并简要介绍其中的典型方法;接着给出一套评价标准并对各个方法予以综合比较;最后总结并提出下一步的研究方向。  相似文献   

20.
ContextFunction Block Diagram (FBD) is increasingly used in safety-critical applications. Test coverage issues for FBDs are frequently raised by regulators and users. However, there is little work at this aspect on testing FBD at model level. Our previous study has designed a new data-flow test coverage criterion, FB-Path Complete Condition Test Coverage (FPCC), that can directly test FBD structures and effectively detect function mutation errors. Nevertheless, because FPCC scheme involves several data-flow concepts and thus it is somewhat complicated to comprehend and to generate FPCC-complied test cases. An automatic test suite generator for FPCC is highly desirable.ObjectiveThis study designs an automatic test case generator, FPCCTestGen, for FPCC so as to enhance the practicability and acceptance of the FPCC approach.MethodFirst, a supporting infrastructure for performing automatic FBD-to-UPPAAL-for-FPCC transformation is designed. The supporting infrastructure includes templates, declarations, and functions as building blocks for transformation. Then, for each input FBD, represented in PLCopen XML format, FPCCTestGen performs parsing and converts FBD components into corresponding UPPAAL model components using aforementioned building blocks. After that, queries related to FPCC characteristics are submitted to UPPAAL model checker for verification. Finally, the verification traces are analyzed to obtain a FPCC-complied test suite.ResultsA safety injection system is used as a case study. Preliminary results show that the generated test suite achieves the highest FPCC percentage with a near optimal number of test cases.ConclusionThis automatic test case generation tool is effective and thus, can promote the use of the new test coverage criterion. Methodology used in FPCCTestGen is generic and can be applied to test suite generation for other test criteria on data-flow programs.  相似文献   

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

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