108 research outputs found

    Adaptive Random Testing in Detecting Layout Faults of Web Applications

    Get PDF
    As part of a software testing process, output verification poses a challenge when the output is not numeric or textual, such as graphical. The industry practice of using human oracles (testers) to observe and verify the correctness of the actual results is both expensive and error-prone. In particular, this practice is usually unsustainable when developing web applications - the most popular software of our era. This is because web applications change frequently due to the fast-evolving requirements amid popular demand. To improve the cost effectiveness of browser output verification, in this study we design failure-based testing techniques and evaluate the effectiveness and efficiency thereof in the context of web testing. With a novel application of the concept of adaptive random sequence (ARS), our approach leverages peculiar characteristics of failure patterns found in browser layout rendering. An empirical study shows that the use of failure patterns and inclination to guide the testing flow leads to more cost-effective results than other classic methods. This study extends the application of ARSs from the input space of programs to their output space, and also shows that adaptive random testing (ART) can outperform random testing (RT) in both failure detection effectiveness (in terms of F-measure) and failure detection efficiency (in terms of execution time)

    A similarity metric for the inputs of OO programs and its application in adaptive random testing

    Get PDF
    Random testing (RT) has been identified as one of the most popular testing techniques, due to its simplicity and ease of automation. Adaptive random testing (ART) has been proposed as an enhancement to RT, improving its fault-detection effectiveness by evenly spreading random test inputs across the input domain. To achieve the even spreading, ART makes use of distance measurements between consecutive inputs. However, due to the nature of object-oriented software (OOS), its distance measurement can be particularly challenging: Each input may involve multiple classes, and interaction of objects through method invocations. Two previous studies have reported on how to test OOS at a single-class level using ART. In this study, we propose a new similarity metric to enable multiclass level testing using ART. When generating test inputs (for multiple classes, a series of objects, and a sequence of method invocations), we use the similarity metric to calculate the distance between two series of objects, and between two sequences of method invocations. We integrate this metric with ART and apply it to a set of open-source OO programs, with the empirical results showing that our approach outperforms other RT and ART approaches in OOS testing

    Metamorphic testing for cybersecurity

    Get PDF
    Metamorphic testing (MT) can enhance security testing by providing an alternative to using a testing oracle, which is often unavailable or impractical. The authors report how MT detected previously unknown bugs in real-world critical applications such as code obfuscators, giving evidence that software testing requires diverse perspectives to achieve greater cybersecurity

    Code Coverage of Adaptive Random Testing

    Full text link

    Exercise training with negative pressure ventilation improves exercise capacity in patients with severe restrictive lung disease: a prospective controlled study

    Get PDF
    BACKGROUND: Exercise training is of benefit for patients with restrictive lung disease. However, it tends to be intolerable for those with severe disease. We examined whether providing ventilatory assistance by using negative pressure ventilators (NPV) during exercise training is feasible for such patients and the effects of training. METHODS: 36 patients with restrictive lung disease were prospectively enrolled for a 12-week multidisciplinary rehabilitation program. During this program, half of them (n:18; 60.3 ± 11.6 years; 6 men; FVC: 32.5 ± 11.7% predicted ) received regular sessions of exercise training under NPV, whilst the 18 others (59.6 ± 12.3 years; 8 men; FVC: 37.7 ± 10.2% predicted) did not. Exercise capacity, pulmonary function, dyspnea and quality of life were measured. The primary endpoint was the between-group difference in change of 6 minute-walk distance (6MWD) after 12 weeks of rehabilitation. RESULTS: All patients in the NPV-exercise group were able to tolerate and completed the program. The between-group differences were significantly better in the NPV-exercise group in changes of 6MWD (34.1 ± 12.7 m vs. -32.5 ± 17.5 m; P = 0.011) and St George Score (−14.5 ± 3.6 vs. 11.8 ± 6.0; P < 0.01). There was an improvement in dyspnea sensation (Borg’s scale, from 1.4 ± 1.5 point to 0.8 ± 1.3 point, P = 0.049) and a small increase in FVC (from 0.85 ± 0.09 L to 0.91 ± 0.08 L, P = 0.029) in the NPV-exercise group compared to the control group. CONCLUSION: Exercise training with NPV support is feasible for patients with severe restrictive lung diseases, and improves exercise capacity and health-related quality of life

    Test case prioritization for object-oriented software: an adaptive random sequence approach based on clustering

    Get PDF
    Test case prioritization (TCP) attempts to improve fault detection effectiveness by scheduling the important test cases to be executed earlier, where the importance is determined by some criteria or strategies. Adaptive random sequences (ARSs) can be used to improve the effectiveness of TCP based on white-box information (such as code coverage information) or black-box information (such as test input information). To improve the testing effectiveness for object-oriented software in regression testing, in this paper, we present an ARS approach based on clustering techniques using black-box information. We use two clustering methods: (1) clustering test cases according to the number of objects and methods, using the K-means and K-medoids clustering algorithms; and (2) clustered based on an object and method invocation sequence similarity metric using the K-medoids clustering algorithm. Our approach can construct ARSs that attempt to make their neighboring test cases as diverse as possible. Experimental studies were also conducted to verify the proposed approach, with the results showing both enhanced probability of earlier fault detection, and higher effectiveness than random prioritization and method coverage TCP technique

    Metamorphic testing: a review of challenges and opportunities

    Get PDF
    Metamorphic testing is an approach to both test case generation and test result verification. A central element is a set of metamorphic relations, which are necessary properties of the target function or algorithm in relation to multiple inputs and their expected outputs. Since its first publication, we have witnessed a rapidly increasing body of work examining metamorphic testing from various perspectives, including metamorphic relation identification, test case generation, integration with other software engineering techniques, and the validation and evaluation of software systems. In this paper, we review the current research of metamorphic testing and discuss the challenges yet to be addressed. We also present visions for further improvement of metamorphic testing and highlight opportunities for new research
    • …
    corecore