172,093 research outputs found

    Search algorithms for regression test case prioritization

    Get PDF
    Regression testing is an expensive, but important, process. Unfortunately, there may be insufficient resources to allow for the re-execution of all test cases during regression testing. In this situation, test case prioritisation techniques aim to improve the effectiveness of regression testing, by ordering the test cases so that the most beneficial are executed first. Previous work on regression test case prioritisation has focused on Greedy Algorithms. However, it is known that these algorithms may produce sub-optimal results, because they may construct results that denote only local minima within the search space. By contrast, meta-heuristic and evolutionary search algorithms aim to avoid such problems. This paper presents results from an empirical study of the application of several greedy, meta-heuristic and evolutionary search algorithms to six programs, ranging from 374 to 11,148 lines of code for 3 choices of fitness metric. The paper addresses the problems of choice of fitness metric, characterisation of landscape modality and determination of the most suitable search technique to apply. The empirical results replicate previous results concerning Greedy Algorithms. They shed light on the nature of the regression testing search space, indicating that it is multi-modal. The results also show that Genetic Algorithms perform well, although Greedy approaches are surprisingly effective, given the multi-modal nature of the landscape

    Empirical Evaluation of Mutation-based Test Prioritization Techniques

    Full text link
    We propose a new test case prioritization technique that combines both mutation-based and diversity-based approaches. Our diversity-aware mutation-based technique relies on the notion of mutant distinguishment, which aims to distinguish one mutant's behavior from another, rather than from the original program. We empirically investigate the relative cost and effectiveness of the mutation-based prioritization techniques (i.e., using both the traditional mutant kill and the proposed mutant distinguishment) with 352 real faults and 553,477 developer-written test cases. The empirical evaluation considers both the traditional and the diversity-aware mutation criteria in various settings: single-objective greedy, hybrid, and multi-objective optimization. The results show that there is no single dominant technique across all the studied faults. To this end, \rev{we we show when and the reason why each one of the mutation-based prioritization criteria performs poorly, using a graphical model called Mutant Distinguishment Graph (MDG) that demonstrates the distribution of the fault detecting test cases with respect to mutant kills and distinguishment

    Family education and support for families at psychosocial risk in Europe: Evidence from a survey of international experts

    Get PDF
    First published online: 11 October 2018There is overwhelming consensus among policy makers, academics, and professionals about the need to support families in their childrearing tasks. Consequently, European countries have been encouraged to develop family support interventions aimed at guaranteeing children's rights, targeting particularly those children in situations of psychosocial risk. While a certain amount of evidence exists regarding how family support is generally delivered in certain European countries, with a particular focus on parenting initiatives, this paper aims to take existing evidence one step further by providing an updated review focusing on two core components of the Council of Europe's Recommendation on Positive Parenting: families at psychosocial risk as the target population, and family education and support initiatives as the delivery format. The scope of the study was therefore broad, in both geographical and conceptual terms. An online survey was conducted with experts from 19 European countries to gather information regarding how they perceive family education and support initiatives for families at psychosocial risk. Both quantitative and qualitative data were analysed by computing frequencies/percentages and by following a thematic synthesis method, respectively. The results revealed both similarities and disparities as regards provider profiles, intervention characteristics, and quality standards. Practical implications are discussed, such as the need to diversify initiatives for at‐risk families in accordance with the tenets of progressive universalism, the ongoing need for an evidence‐based, pluralistic approach to programmes, and the skills and qualifications required in the family support workforce. This study constitutes a first step towards building a common family support framework at a European level, which would encompass family support and parenting policies aimed at families at psychosocial risk.Ministerio de EconomĂ­a y Competitividad de España EDU2013‐41441‐

    An experimental evaluation of software redundancy as a strategy for improving reliability

    Get PDF
    The strategy of using multiple versions of independently developed software as a means to tolerate residual software design faults is suggested by the success of hardware redundancy for tolerating hardware failures. Although, as generally accepted, the independence of hardware failures resulting from physical wearout can lead to substantial increases in reliability for redundant hardware structures, a similar conclusion is not immediate for software. The degree to which design faults are manifested as independent failures determines the effectiveness of redundancy as a method for improving software reliability. Interest in multi-version software centers on whether it provides an adequate measure of increased reliability to warrant its use in critical applications. The effectiveness of multi-version software is studied by comparing estimates of the failure probabilities of these systems with the failure probabilities of single versions. The estimates are obtained under a model of dependent failures and compared with estimates obtained when failures are assumed to be independent. The experimental results are based on twenty versions of an aerospace application developed and certified by sixty programmers from four universities. Descriptions of the application, development and certification processes, and operational evaluation are given together with an analysis of the twenty versions
    • 

    corecore