2 research outputs found
Model-based Automated Testing of JavaScript Web Applications via Longer Test Sequences
JavaScript has become one of the most widely used languages for Web
development. However, it is challenging to ensure the correctness and
reliability of Web applications written in JavaScript, due to their dynamic and
event-driven features. A variety of dynamic analysis techniques for JavaScript
Web applications have been proposed, but they are limited in either coverage or
scalability. In this paper, we propose a model-based automated approach to
achieve high code coverage in a reasonable amount of time via testing with
longer event sequences. We implement our approach as the tool LJS, and perform
extensive experiments on 21 publicly available benchmarks (18,559 lines of code
in total). On average, LJS achieves 86.4\% line coverage in 10 minutes, which
is 5.4\% higher than that of JSDep, a breadth-first search based automated
testing tool enriched with partial order reduction. In particular, on large
applications, the coverage of LJS is 11-18\% higher than that of JSDep. Our
empirical finding supports that longer test sequences can achieve higher code
coverage in JavsScript testing
A Systematic Literature Review of Test Breakage Prevention and Repair Techniques
Context: When an application evolves, some of the developed test cases break.
Discarding broken test cases causes a significant waste of effort and leads to
test suites that are less effective and have lower coverage. Test repair
approaches evolve test suites along with applications by repairing the broken
test cases. Objective: Numerous studies are published on test repair approaches
every year. It is important to summarise and consolidate the existing knowledge
in the area to provide directions to researchers and practitioners. This
research work provides a systematic literature review in the area of test case
repair and breakage prevention, aiming to guide researchers and practitioners
in the field of software testing. Method: We followed the standard protocol for
conducting a systematic literature review. First, research goals were defined
using the Goal Question Metric (GQM). Then we formulate research questions
corresponding to each goal. Finally, metrics are extracted from the included
papers. Based on the defined selection criteria a final set of 41 primary
studies are included for analysis. Results: The selection process resulted in 5
journal papers, and 36 conference papers. We present a taxonomy that lists the
causes of test case breakages extracted from the literature. We found that only
four proposed test repair tools are publicly available. Most studies evaluated
their approaches on open-source case studies. Conclusion: There is significant
room for future research on test repair techniques. Despite the positive trend
of evaluating approaches on large scale open-source studies, there is a clear
lack of results from studies done in a real industrial context. Few tools are
publicly available which lowers the potential of adaption by industry
practitioners