共查询到19条相似文献,搜索用时 187 毫秒
1.
测试用例最小化研究* 总被引:2,自引:0,他引:2
给出了测试用例最小化问题的形式化描述,提出并实现了两个新的用于用例最小化的算法.与现有其他最小化算法不同,这两个算法在考虑了每个用例测试覆盖度的同时,还考虑了用例的测试运行代价,目的是提高最小化效率.最后给出了对这两个算法进行实例研究的实验结果.结果表明,用例最小化技术能有效缩减回归测试用例集的尺寸,大幅度降低回归测试费用,提高最小化效率. 相似文献
2.
测试用例集的约简方法研究 总被引:1,自引:0,他引:1
蚁群算法是一种群体智能算法,能有效解决复杂的组合优化问题.在测试用例约简的问题上,该算法能在速度和精确度上寻求到一个平衡点.与传统的最小化算法不同,这个算法不仅考虑了每个测试用例覆盖度,还考虑了用例的运行代价,实验给出了这个算法与经典算法的比较结果,结论表明,此算法能快速有效缩减测试用例集的数量并降低测试运行代价,以提... 相似文献
3.
针对为数较多的测试用例增加了回归测试成本的问题,提出一种基于弱变异准则的测试用例约简方法。首先,基于弱变异准则获得测试用例和变异分支关系矩阵;然后,重复约简4种无效测试需求和子集测试用例;最后,结合人工鱼群算法选择当前最优测试用例,并且交替执行简化和测试用例选择操作直至覆盖所有测试需求。该方法针对6个经典程序与贪心算法和HGS算法相比,基于弱变异准则并且不改变或稍微改变变异评分的条件下,约简率分别提高了73.4%和8.2%,且耗时分别降低了25.3%和56.1%。实验结果表明,所提方法在回归测试中可有效约简测试用例,降低测试代价。 相似文献
4.
基于回归测试模型的用例集的优化方法研究 总被引:2,自引:0,他引:2
软件回归测试中不仅重用原有的测试用例,还要补充生成新的用例来满足系统的新功能和特征.本文针对回归测试模型,在合并原有用例集和新增用例集的基础上,根据测试需求的关系优化测试需求,然后采用启发式算法优化用例集.实例分析证明,该方法可以有效的缩减回归测试用例集的规模,大幅度降低了回归测试的费用. 相似文献
5.
软件测试的任何阶段均涉及到回归测试,它为修改后的软件的正确性提供保证。程序的修改主要体现在类的修改。本文在UML类图表达方式基础上,分析类的依赖关系,生成类的依赖集,在此基础上采用优先级的技术缩减测试用例集,提高测试效率。 相似文献
6.
7.
一种基于正交表的功能组合测试设计方法 总被引:1,自引:0,他引:1
软件测试在目前的软件开发过程中的地位日益重要。特别是目前的软件功能愈来愈多,必须保证各功能组合之间不产生冲突。如果以无条件地测试所有功能组合,则测试项目数会呈指数级增长而使得实际测试不可能。为了抑制这种组合的发散,利用正交表来设计测试是一种有效的方法。本文阐述了一种基于正交表的功能组合测试设计方法和应用,并开发了相应的测试用例生成工具,基于正交表原理,对测试对象程序的各功能项进行组合,确保用较少的测试用例达到较大的测试覆盖率。实验表明,与传统手工测试用例设计方法相比,利用该方法生成的测试用例覆盖率提高2倍,Bug发现率增加3倍,测试用例设计工时压缩为1/6。 相似文献
8.
9.
在并行程序测试中,测试输入和线程交互时序是影响并行错误检测的两个关键因素。以缩减并行错误检测的输入空间为目标,给出一种基于变异测试的测试用例最小化算法。首先对并行程序进行研究,选取与并行错误密切相关的9个变异算子,并以此为基础为待测程序生成多种变异体;采用JPF作为线程调度工具来执行测试用例,根据变异评分与平均时间成本对测试用例进行排序,在优化后的测试用例集中选取检测能力不重复的测试用例,从而得到面向并行错误检测的最小测试用例集。实验结果证明,该方法能有效减小测试用例集的规模,并大幅缩短运行时间,从而提高了并行程序的测试效率。 相似文献
10.
11.
在软件开发和维护过程中,为了提高对源程序变更部分的信心并且保证源程序变更部分没有对未变更部分造成负面影响,需要对软件系统进行回归测试。回归测试是一个昂贵的测试过程。测试用例集约简算法是在仍然满足测试准则的前提下,通过删除所有冗余测试用例得到测试用例集的最小约简测试用例集,用以优化回归测试过程。综述了文献中主要的测试用例集启发式约简算法,通过统一的框架和术语定义了这些算法,分析和比较了这些算法的效率和优劣,指出了未来进一步研究的方向。 相似文献
12.
Jones J.A. Harrold M.J. 《IEEE transactions on pattern analysis and machine intelligence》2003,29(3):195-209
Software testing is particularly expensive for developers of high-assurance software, such as software that is produced for commercial airborne systems. One reason for this expense is the Federal Aviation Administration's requirement that test suites be modified condition/decision coverage (MC/DC) adequate. Despite its cost, there is evidence that MC/DC is an effective verification technique and can help to uncover safety faults. As the software is modified and new test cases are added to the test suite, the test suite grows and the cost of regression testing increases. To address the test-suite size problem, researchers have investigated the use of test-suite reduction algorithms, which identify a reduced test suite that provides the same coverage of the software according to some criterion as the original test suite, and test-suite prioritization algorithms, which identify an ordering of the test cases in the test suite according to some criteria or goals. Existing test-suite reduction and prioritization techniques, however, may not be effective in reducing or prioritizing MC/DC-adequate test suites because they do not consider the complexity of the criterion. This paper presents new algorithms for test-suite reduction and prioritization that can be tailored effectively for use with MC/DC. The paper also presents the results of empirical studies of these algorithms. 相似文献
13.
《Information and Software Technology》2014,56(10):1322-1344
ContextIn software development and maintenance, a software system may frequently be updated to meet rapidly changing user requirements. New test cases will be designed to ensure the correctness of new or modified functions, thus gradually increasing the test suite’s size. Test suite reduction techniques aim to decrease the cost of regression testing by removing the redundant test cases from the test suite and then obtaining a representative set of test cases that still yield a high level of code coverage.ObjectiveMost of the existing reduction algorithms focus on decreasing the test suite’s size. Yet, the differences in execution costs among test cases are usually significant and it may take a lot of execution time to run a test suite consisting of a few long-running test cases. This paper presents and empirically evaluates cost-aware algorithms that can produce the representative sets with lower execution costs.MethodWe first use a cost-aware test case metric, called Irreplaceability, and its enhanced version, called EIrreplaceability, to evaluate the possibility that each test case can be replaced by others during test suite reduction. Furthermore, we construct a cost-aware framework that incorporates the concept of test irreplaceability into some well-known test suite reduction algorithms.ResultsThe effectiveness of the cost-aware framework is evaluated via the subject programs and test suites collected from the Software-artifact Infrastructure Repository — frequently chosen benchmarks for experimentally evaluating test suite reduction methods. The empirical results reveal that the presented algorithms produce representative sets that normally incur a low cost to yield a high level of test coverage.ConclusionThe presented techniques indeed enhance the capability of the traditional reduction algorithms to reduce the execution cost of a test suite. Especially for the additional Greedy algorithm, the presented techniques decrease the costs of the representative sets by 8.10–46.57%. 相似文献
14.
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. 相似文献
15.
一种新的测试集简化的测试覆盖准则 总被引:2,自引:0,他引:2
在回归测试过程中,测试集的规模不断的变大增加了测试的成本.结合某种测试准则利用测试简化法对测试集中冗余的测试用例进行删除是一种有效的解决方法.但是用此方法得到的简化测试集,其错误检测能力往往被减弱.因此提出了一种新颖的测试覆盖准则,即二级变量串联覆盖准则和二级变量并联覆盖准则.这两种准则主要考虑了变量间的串、并联关系对程序的影响.用此准则与其它测试覆盖准则相组合,利用HGS测试集简化法对测试集进行选择,既简单高效又保证了最小化测试集的错误检测能力.针对文献[3]中的具体应用实例,验证了该测试覆盖准则的有效性. 相似文献
16.
17.
开发者每一次对软件的修改都会导致测试集的增长。在进行回归测试时,如果重新运行所有的测试案例,成本将是极其昂贵的。于是,一些压缩测试集的算法被提出。这些算法能够找出一个与原测试集有相同覆盖度的压缩测试集,但这些压缩后的测试集在查错方面的性能不十分令人满意。引入错误级别的概念可以对测试案例的查错能力进行更为为细致的划分。本文通过引入错误级别,改进了一个双标准测试集压缩模型,并提出了一个新的测试集压缩算法。改进后的双标准测试集压缩模型能提供关于测试案例查错能力的更具体的信息。新算法有一个重要的特点:在任何时候中断算法,仍然能得到一个满足覆盖度的压缩测试集。 相似文献
18.
回归测试是软件演化过程中频繁进行的且开销巨大的一项任务,测试用例集的优化程度直接影响着测试的成本和效率。针对回归测试过程的特点,提出一种对测试用例集优化的新方法,即通过对测试用例集进行必要的消除冗余和调整排序,完成了对初始测试用例集的精简以及执行顺序的确定过程,使得有限的测试资源得到科学合理的分配。实验结果表明,相对于以往的测试用例集优化方法,新方法的效率和资源分配的合理性均有了显著的提高。 相似文献
19.
一个划算的回归测试用例排序的成本-收益模型 总被引:1,自引:0,他引:1
回归测试是一个昂贵的测试过程,它验证修改的软件,确认是否给已经测试的代码引进了新的错误.因为在软件开发的过程中,测试人员给测试包中增加了新的测试用例,使软件确认更加困难.为了使回归测试更经济划算,提出了很多技术和方法.测试用例选择,测试包缩减,测试用例排序可以帮助我们减少需要运行的测试用例数目,同时能够更快地满足测试目标.测试用例排序是在满足某个性能目标的基础上,保证在测试过程中首先执行更重要的功能.以前的研究提出了一个性能目标:缺陷发现率(APFD),以及很多改善缺陷发现率的技术.但是这些技术运用起来非常昂贵,而且可能不会减少回归测试的成本.在以往研究的基础上,提出了一个成本-收益模型,为比较各种排序算法提供了一定依据.并在此基础上,提供了一个测试用例排序算法. 相似文献