7 research outputs found
Neural Embeddings for Web Testing
Web test automation techniques employ web crawlers to automatically produce a
web app model that is used for test generation. Existing crawlers rely on
app-specific, threshold-based, algorithms to assess state equivalence. Such
algorithms are hard to tune in the general case and cannot accurately identify
and remove near-duplicate web pages from crawl models. Failing to retrieve an
accurate web app model results in automated test generation solutions that
produce redundant test cases and inadequate test suites that do not cover the
web app functionalities adequately. In this paper, we propose WEBEMBED, a novel
abstraction function based on neural network embeddings and threshold-free
classifiers that can be used to produce accurate web app models during
model-based test generation. Our evaluation on nine web apps shows that
WEBEMBED outperforms state-of-the-art techniques by detecting near-duplicates
more accurately, inferring better web app models that exhibit 22% more
precision, and 24% more recall on average. Consequently, the test suites
generated from these models achieve higher code coverage, with improvements
ranging from 2% to 59% on an app-wise basis and averaging at 23%.Comment: 12 pages; in revisio
A Mapping Study of scientific merit of papers, which subject are web applications test techniques, considering their validity threats
Progress in software engineering requires (1) more empirical studies of quality, (2) increased focus on synthesizing evidence, (3) more theories to be built and tested, and (4) the validity of the experiment is directly related with the level of confidence in the process of experimental investigation. This paper presents the results of a qualitative and quantitative classification of the threats to the validity of software engineering experiments comprising a total of 92 articles published in the period 2001-2015, dealing with software testing of Web applications. Our results show that 29.4% of the analyzed articles do not mention any threats to validity, 44.2% do it briefly, and 14% do it judiciously; that leaves a question: these studies have scientific value
Automated Usability Testing Of Websites Using Link Structure
Websites keeps getting more important in business and other aspects of society. Making the websites as usable as possible is crucial as difficult to use systems tend to frustrate users, which might lead to users leaving or lost revenue for a business. Usability testing is needed to identify and fix those issues. Manual tests in usability labs can be very time consuming and costly. An automated system could reduce time and cost of testing, but are often too focused on one aspect to give a clear view of what needs to be fixed. A system to improve this is needed. 4 separate modules focusing on different aspects of testing the information structure and navigation of a website are implemented and tested. The modules are combined in a system that gather the results from each module and provide a better overview of the usability issues of a website
Utilizing Output in Web Application Server-Side Testing
This thesis investigates the utilization of web application output in enhancing automated server-side code testing. The server-side code is the main driving force of a web application generating client-side code, maintaining the state and communicating with back-end resources. The output observed in those elements provides a valuable resource that can potentially enhance the efficiency and effectiveness of automated testing. The thesis aims to explore the use of this output in test data generation, test sequence regeneration, augmentation and test case selection. This thesis also addresses the web-specific challenges faced when applying search based test data generation algorithms to web applications and dataflow analysis of state variables to test sequence regeneration. The thesis presents three tools and four empirical studies to implement and evaluate the proposed approaches: SWAT (Search based Web Application Tester) is a first application of search based test data generation algorithms for web applications. It uses values dynamically mined from the intermediate and the client-side output to enhance the search based algorithm. SART (State Aware Regeneration Tool) uses dataflow analysis of state variables, session state and database tables, and their values to regenerate new sequences from existing sequences. SWAT-U (SWAT-Uniqueness) augments test suites with test cases that produce outputs not observed in the original test suite’s output. Finally, the thesis presents an empirical study of the correlation between new output based test selection criteria and fault detection and structural coverage. The results confirm that using the output does indeed enhance the effectiveness and efficiency of search based test data generation and enhances test suites’ effectiveness for test sequence regeneration and augmentation. The results also report that output uniqueness criteria are strongly correlated with both fault detection and structural coverage and are complementary to structural coverage
Scripts in a Frame: A Framework for Archiving Deferred Representations
Web archives provide a view of the Web as seen by Web crawlers. Because of rapid advancements and adoption of client-side technologies like JavaScript and Ajax, coupled with the inability of crawlers to execute these technologies effectively, Web resources become harder to archive as they become more interactive. At Web scale, we cannot capture client-side representations using the current state-of-the art toolsets because of the migration from Web pages to Web applications. Web applications increasingly rely on JavaScript and other client-side programming languages to load embedded resources and change client-side state. We demonstrate that Web crawlers and other automatic archival tools are unable to archive the resulting JavaScript-dependent representations (what we term deferred representations), resulting in missing or incorrect content in the archives and the general inability to replay the archived resource as it existed at the time of capture.
Building on prior studies on Web archiving, client-side monitoring of events and embedded resources, and studies of the Web, we establish an understanding of the trends contributing to the increasing unarchivability of deferred representations. We show that JavaScript leads to lower-quality mementos (archived Web resources) due to the archival difficulties it introduces. We measure the historical impact of JavaScript on mementos, demonstrating that the increased adoption of JavaScript and Ajax correlates with the increase in missing embedded resources. To measure memento and archive quality, we propose and evaluate a metric to assess memento quality closer to Web users’ perception.
We propose a two-tiered crawling approach that enables crawlers to capture embedded resources dependent upon JavaScript. Measuring the performance benefits between crawl approaches, we propose a classification method that mitigates the performance impacts of the two-tiered crawling approach, and we measure the frontier size improvements observed with the two-tiered approach. Using the two-tiered crawling approach, we measure the number of client-side states associated with each URI-R and propose a mechanism for storing the mementos of deferred representations.
In short, this dissertation details a body of work that explores the following: why JavaScript and deferred representations are difficult to archive (establishing the term deferred representation to describe JavaScript dependent representations); the extent to which JavaScript impacts archivability along with its impact on current archival tools; a metric for measuring the quality of mementos, which we use to describe the impact of JavaScript on archival quality; the performance trade-offs between traditional archival tools and technologies that better archive JavaScript; and a two-tiered crawling approach for discovering and archiving currently unarchivable descendants (representations generated by client-side user events) of deferred representations to mitigate the impact of JavaScript on our archives.
In summary, what we archive is increasingly different from what we as interactive users experience. Using the approaches detailed in this dissertation, archives can create mementos closer to what users experience rather than archiving the crawlers’ experiences on the Web
Recommended from our members
Swapbeat.com: a streaming, adaptive music service in the browser
In recent years, ongoing shifts in the economics of the music industry have driven many artists to reevaluate how they intend to make money, with some artists now deciding that they will give their music away for free if it will increase their popularity and drive more fans to buy tickets to see their live shows.
Sites such as SoundCloud.com cater to this dynamic, allowing artists to host their music on the site for unlimited free streaming and download by fans. However, the sheer volume of music being uploaded to SoundCloud makes it impossible for even the most diehard music fans to keep tabs on what has been released and what is becoming popular with other listeners.
This paper therefore discusses the creation of swapbeat.com, a browser-based music streaming service. The site operates by first measuring how frequently new songs are being reviewed across 175+ popular music review sites on the Internet. The most frequently reviewed songs are then added to the swapbeat.com site, where score-based playlists of the songs are regenerated at frequent intervals, based on several explicit and implicit measures of sentiment gathered from users as they listen to music on the site. Experiences and observations from the first two months of operation for swapbeat.com are then reviewed, and areas for further work are proposed.Electrical and Computer Engineerin
Crawlability metrics for automated web testing
Web applications are exposed to frequent changes both in requirements and involved technologies. At the same time, there is a continuously growing demand for quality and trust and such a fast evolution and quality constraints claim for mechanisms and techniques for automated testing. Web application automated testing often involves random crawlers to navigate the application under test and automatically explore its structure. However, owing to the specific challenges of the modern Web systems, automatic crawlers may leave large portions of the application unexplored. In this paper, we propose the use of structural metrics to predict whether an automatic crawler with given crawling capabilities will be sufficient or not to achieve high coverage of the application under test. In this work, we define a taxonomy of such capabilities and we determine which combination of them is expected to give the highest reward in terms of coverage increase. Our proposal is supported by an experiment in which 19 web applications have been analyzed. © 2010 Springer-Verlag