The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Functional testing requires executing particular sequences of user actions. Test automation tools enable scripting user actions such that they can be repeated more easily. SELENIUM, for instance, enables testing web applications through scripts that interact with a web browser and assert properties about its observable state. However, little is known about how common such tests are in practice. We...
As a software project ages, its source code is modified to add new features, restructure existing ones, and fix defects. These source code changes often induce changes in the build system, i.e., the system that specifies how source code is translated into deliverables. However, since developers are often not familiar with the complex and occasionally archaic technologies used to specify build systems,...
UML state machines are commonly used to model the state-based behavior of communication and control systems to support various activities such as test cases and code generation. Standard UML state machines are well suited to model functional behavior, however extra-functional behavior such as robustness and security can also be directly modeled on them, but this often results in cluttered models since...
Automated testing of web applications reduces the effort needed in manual testing. Old 1st generation tools, based on screen coordinates, produce quite fragile test suites, tightly coupled with the specific screen resolution, window position and size experienced during test case recording. These tools have been replaced by a 2nd generation of tools, which offer easy selection and interaction with...
Duplicated source code -- clones -- is known to occur frequently in software systems and bears the risk of inconsistent updates of the code. The impact of clones has been investigated mostly by retrospective analysis of software systems. Only little effort has been spent to investigate human interaction when dealing with clones. A previous study by Chatterji and colleagues found that cloned defects...
Automatic generation of a good test suite is difficult, especially for object-oriented software. Feedback-directed random test generation is an approach that can achieve good branch coverage and has been used as a basis to systematically construct suites for testing realistic Java programs. We augment this random test generation method to create tests suites that satisfy an intra-class data-flow coverage...
Testing is a crucial aspect of the development of dependable embedded systems, and therefore a significant effort is put into researching and developing efficient testing techniques. However, testing is not normally taught in specific courses at many universities, but rather as a peripheral activity to programming. In this paper, we report on three separate experiences at teaching an advanced testing...
Quality can be defined as the level of adequacy between the final product and its specification. Software industries use many testing methodologies to assure the high-quality of their software. Code coverage is one of these methodologies usually applied to test the expected (normal) behavior of software. Exception handling structures mainly appear in software code to deal with problems caused by unexpected...
Automated testing is a hot topic in computing testing society. The automated test management is an important component in this domain. Workflow Management System(WfMS) is a powerful tool to support software testing process management and automation. Java Business Process Management (jBPM) is a flexible and extensible framework combing the convenience of workflow capabilities and the outstanding scalability...
Web application has got a remarkable change in the past few years, many new technologies are reshaping the pattern of Web applications. Since many manufacturers' promotion on HTML5 technology, more and more websites are using HTML5 gradually. The new technology provides users with a variety of Internet applications, but introduces new security problems at the same time. Currently, most Web application...
We present a study on a significantly large and varied set of freely available Java virtual machines implementations. The aim of the study is to assess their level of conformity to the structural constraints of the Java language specification. In order to do that we set up a refined framework for the automated generation of a conformance checking test suite. In the framework, the test cases are generated...
Web services are supported by a set of protocols that have been designed with the main goal of providing interoperable communication to applications. In typical business-critical services environments the occurrence of interoperability issues can have disastrous consequences, including direct financial costs, reputation, and client fidelity losses. Despite this, experience suggests that interoperability...
Search-based test generators, such as those using genetic algorithms and alternative variable methods, can automatically generate test inputs. They typically rely on fitness functions to calculate fitness scores for guiding the search process. This paper presents a novel rule-based testing (RBT) approach to automated generation of test inputs from Java byte code without using fitness functions. It...
Web Services are a set of technologies designed to support the invocation of remote services by client applications, with the key goal of providing interoperable application-to-application interaction while supporting vendor and platform independence. The goal of this work is to study the real level of interoperability provided by these technologies through a massive experimental campaign involving...
As primarily modular and distributed architectures, service-oriented architectures may impose new challenges in software evolution. Since web services evolve independently, this may cause disruptions to the proper function of consuming software. In this paper, we present \wsd, an Eclipse plug-in to support the evolution of service clients, including (a) identifying the differences between two service...
Recent testing techniques for database applications typically include generation of both program inputs and database states (synthetic data). The quality of such test cases is evaluated on the basis of structural coverage of the host language (e.g., Java), whereas, the quality of test cases for the embedded language (e.g., SQL) is evaluated separately using mutation testing. In mutation testing, several...
Lightweight property-based testing tools are becoming popular these days. With property-based testing, developers can test properties of the system under test against large varieties of randomly generated inputs without writing test cases. Despite the advantages of property-based testing, current property-based testing tools have a major drawback: they require developers to write generator functions...
Assessing the quality of a test suite is an important step of the testing process. Indeed, it is necessary to ensure that the different test cases target all the critical parts of the system. Model-based testing is a famous technique to perform testing. It uses a model of the system under test. Most of these models include logic formulas. Such formulas encompasses constraints to be satisfied within...
The availability of automated tool support is an important consideration for software developers before they can incorporate higher order mutation testing into their software development processes. This paper presents HOMAJ, a higher order mutation testing tool for AspectJ and Java. HOMAJ automates the process of generating and evaluating first order mutants (FOMs) and higher order mutants (HOMs)...
We present a combinatorial interaction testing approach to perform validation testing of a fundamental component for the security of Java Cards: the byte code verifier. Combinatorial testing of all states of the Java Card virtual machine has been adopted as the coverage criteria. We developed a formal model of the Java Card byte code syntax to enable the combinatorial enumeration of well-formed states,...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.