Maurizio Leotta - Academia.edu (original) (raw)

Uploads

Papers by Maurizio Leotta

Research paper thumbnail of Towards a Lightweight Model Driven Method for Developing SOA Systems Using Existing Assets

Developing SOA based systems and migrating legacy systems to SOA are difficult and error prone ta... more Developing SOA based systems and migrating legacy systems to SOA are difficult and error prone tasks, where approaches, methods and tools play a fundamental role. For this reason, several proposals have been brought forward in literature to help SOA developers.

Research paper thumbnail of An Exploratory Survey on SOA Knowledge, Adoption and Trend in the Italian Industry

The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service O... more The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service Oriented Architecture) in the Italian industry. We are also interested to understand what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry.

Research paper thumbnail of Comparing the Maintainability of Two Alternative Architectures of a Postal System: SOA vs. Non-SOA

2011 15th European Conference on Software Maintenance and Reengineering, 2011

Recently, we were prompted by a local company to improve the maintainability of a postal legacy s... more Recently, we were prompted by a local company to improve the maintainability of a postal legacy system and reduce the time to close the change requests.

Research paper thumbnail of Automated generation of visual web tests from DOM-based web tests

Proceedings of the 30th Annual ACM Symposium on Applied Computing - SAC '15, 2015

Functional test automation is increasingly adopted by web applications developers. In particular,... more Functional test automation is increasingly adopted by web applications developers. In particular, 2nd generation tools overcome the limitations of 1st generation tools, based on screen coordinates, by providing APIs for easy selection and interaction with Document Object Model (DOM) elements. On the other hand, a new, 3rd generation of web testing tools, based on visual image recognition, brings the promise of wider applicability and simplicity. In this paper, we consider the problem of the automated creation of 3rd generation visual web tests from 2nd generation test suites. This transformation affects mostly the way in which test cases locate web page elements to interact with or to assert the expected test case outcome.

Research paper thumbnail of A Pilot Experiment to Quantify the Effect of Documentation Accuracy on Maintenance Tasks

2013 IEEE International Conference on Software Maintenance, 2013

ABSTRACT This paper reports the results and some challenges we discovered during the design and e... more ABSTRACT This paper reports the results and some challenges we discovered during the design and execution of a pilot experiment with 21 bachelor students aimed at investigating the effect of documentation accuracy during software maintenance and evolution activities. As documentation we considered: a high level system functionality description and UML documents. Preliminary results indicate a benefit of +15% in terms of efficiency (computed as number of correct tasks per minute) when a more accurate documentation is used. The discovered challenging aspects to carefully consider in future executions of the experiment are as follows: selecting "the right" documentation artefacts, maintenance tasks and documentation versions, verifying that the subjects really used the documentation during the experiment and measuring documentation-code alignment.

Research paper thumbnail of Using Multi-Locators to Increase the Robustness of Web Test Cases

2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST), 2015

ABSTRACT The main reason for the fragility of web test cases is the inability of web element loca... more ABSTRACT The main reason for the fragility of web test cases is the inability of web element locators to work correctly when the web page DOM evolves. Web elements locators are used in web test cases to identify all the GUI objects to operate upon and eventually to retrieve web page content that is compared against some oracle in order to decide whether the test case has passed or not. Hence, web element locators play an extremely important role in web testing and when a web element locator gets broken developers have to spend substantial time and effort to repair it. While algorithms exist to produce robust web element locators to be used in web test scripts, no algorithm is perfect and different algorithms are exposed to different fragilities when the software evolves. Based on such observation, we propose a new type of locator, named multi-locator, which selects the best locator among a candidate set of locators produced by different algorithms. Such selection is based on a voting procedure that assigns different voting weights to different locator generation algorithms. Experimental results obtained on six web applications, for which a subsequent release was available, show that the multi- locator is more robust than the single locators (about –30% of broken locators w.r.t. the most robust kind of single locator) and that the execution overhead required by the multiple queries done with different locators is negligible (2-3% at most).

Research paper thumbnail of Comparing the maintainability of selenium WebDriver test suites employing different locators: a case study

Proceedings of the 2013 International Workshop on Joining AcadeMiA and Industry Contributions to testing Automation - JAMAICA 2013, 2013

ABSTRACT

Research paper thumbnail of PESTO: A Tool for Migrating DOM-Based to Visual Web Tests

2014 IEEE 14th International Working Conference on Source Code Analysis and Manipulation, 2014

Automated testing of web applications reduces the effort needed in manual testing. Old 1st genera... more 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 the web elements, based on DOM-oriented commands. Recently, a new 3rd generation of tools came up based on visual image recognition, bringing the promise of wider applicability and simplicity. A tester might ask if the migration towards such new technology is worthwhile, since the manual effort to rewrite a test suite might be overwhelming. In this paper, we propose PESTO, a tool facing the problem of the automated migration of 2nd generation test suites to the 3rd generation. PESTO determines automatically the screen position of each web element located on the DOM by a 2nd generation test case. It then calculates a screenshot image centred around the web element so as to ensure unique visual matching. Then, the entire source code of the DOM-based test suite is transformed into a visual test suite, based on such automatically extracted images and using specific visual commands.

Research paper thumbnail of Model-Driven vs. Code-Centric Maintenance

Research paper thumbnail of What Are the Used UML Diagram Constructs? A Document and Tool Analysis Study covering Activity and Use Case Diagrams

Research paper thumbnail of Unit Testing of Model to Text Transformations

Research paper thumbnail of Repairing Selenium Test Cases: An Industrial Case Study about Web Page Element Localization

This poster presents an industrial case study about test automation and test suite maintenance in... more This poster presents an industrial case study about test automation and test suite maintenance in the context of Web applications. The Web application under test is a Learning Content Management System (eXact learning LCMS). We analysed the costs associated with the realignment of four equivalent Selenium WebDriver test suites, implemented using the page object pattern and different methods to locate web page elements, to a subsequent release of eXact learning LCMS. In our study, the two ID-based test suites required significantly less maintenance effort than the XPath-based ones.

Research paper thumbnail of A Method for Testing Model to Text Transformations

Research paper thumbnail of What are the used Activity Diagram Constructs?-A Survey

Research paper thumbnail of Improving test suites maintainability with the page object pattern: an industrial case study

Research paper thumbnail of Visual vs. DOM-based web locators: An empirical study

Research paper thumbnail of Building VECM-based Systems with a Model Driven Approach: an Experience Report

Recently, we took part in a project with two local companies about the creation of a UML-based Mo... more Recently, we took part in a project with two local companies about the creation of a UML-based Model Driven rigorous method to develop VECM-based systems. VECM is a way to abstract from the details of different Enterprise Content Management (ECM) systems used within the same organization. This report details the experience made using our method to develop V-Protocol: a system able to protocol, sign and archive public competition announcements received by a company.

Research paper thumbnail of Business process modelling: Five styles and a method to choose the most suitable one

Research paper thumbnail of What are the used UML diagrams? A Preliminary Survey

Research paper thumbnail of An exploratory survey on SOA knowledge, adoption and trend in the Italian industry

2012 14th IEEE International Symposium on Web Systems Evolution (WSE), 2012

The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service O... more The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service Oriented Architecture) in the Italian industry. We are also interested to understand what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry.

Research paper thumbnail of Towards a Lightweight Model Driven Method for Developing SOA Systems Using Existing Assets

Developing SOA based systems and migrating legacy systems to SOA are difficult and error prone ta... more Developing SOA based systems and migrating legacy systems to SOA are difficult and error prone tasks, where approaches, methods and tools play a fundamental role. For this reason, several proposals have been brought forward in literature to help SOA developers.

Research paper thumbnail of An Exploratory Survey on SOA Knowledge, Adoption and Trend in the Italian Industry

The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service O... more The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service Oriented Architecture) in the Italian industry. We are also interested to understand what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry.

Research paper thumbnail of Comparing the Maintainability of Two Alternative Architectures of a Postal System: SOA vs. Non-SOA

2011 15th European Conference on Software Maintenance and Reengineering, 2011

Recently, we were prompted by a local company to improve the maintainability of a postal legacy s... more Recently, we were prompted by a local company to improve the maintainability of a postal legacy system and reduce the time to close the change requests.

Research paper thumbnail of Automated generation of visual web tests from DOM-based web tests

Proceedings of the 30th Annual ACM Symposium on Applied Computing - SAC '15, 2015

Functional test automation is increasingly adopted by web applications developers. In particular,... more Functional test automation is increasingly adopted by web applications developers. In particular, 2nd generation tools overcome the limitations of 1st generation tools, based on screen coordinates, by providing APIs for easy selection and interaction with Document Object Model (DOM) elements. On the other hand, a new, 3rd generation of web testing tools, based on visual image recognition, brings the promise of wider applicability and simplicity. In this paper, we consider the problem of the automated creation of 3rd generation visual web tests from 2nd generation test suites. This transformation affects mostly the way in which test cases locate web page elements to interact with or to assert the expected test case outcome.

Research paper thumbnail of A Pilot Experiment to Quantify the Effect of Documentation Accuracy on Maintenance Tasks

2013 IEEE International Conference on Software Maintenance, 2013

ABSTRACT This paper reports the results and some challenges we discovered during the design and e... more ABSTRACT This paper reports the results and some challenges we discovered during the design and execution of a pilot experiment with 21 bachelor students aimed at investigating the effect of documentation accuracy during software maintenance and evolution activities. As documentation we considered: a high level system functionality description and UML documents. Preliminary results indicate a benefit of +15% in terms of efficiency (computed as number of correct tasks per minute) when a more accurate documentation is used. The discovered challenging aspects to carefully consider in future executions of the experiment are as follows: selecting "the right" documentation artefacts, maintenance tasks and documentation versions, verifying that the subjects really used the documentation during the experiment and measuring documentation-code alignment.

Research paper thumbnail of Using Multi-Locators to Increase the Robustness of Web Test Cases

2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST), 2015

ABSTRACT The main reason for the fragility of web test cases is the inability of web element loca... more ABSTRACT The main reason for the fragility of web test cases is the inability of web element locators to work correctly when the web page DOM evolves. Web elements locators are used in web test cases to identify all the GUI objects to operate upon and eventually to retrieve web page content that is compared against some oracle in order to decide whether the test case has passed or not. Hence, web element locators play an extremely important role in web testing and when a web element locator gets broken developers have to spend substantial time and effort to repair it. While algorithms exist to produce robust web element locators to be used in web test scripts, no algorithm is perfect and different algorithms are exposed to different fragilities when the software evolves. Based on such observation, we propose a new type of locator, named multi-locator, which selects the best locator among a candidate set of locators produced by different algorithms. Such selection is based on a voting procedure that assigns different voting weights to different locator generation algorithms. Experimental results obtained on six web applications, for which a subsequent release was available, show that the multi- locator is more robust than the single locators (about –30% of broken locators w.r.t. the most robust kind of single locator) and that the execution overhead required by the multiple queries done with different locators is negligible (2-3% at most).

Research paper thumbnail of Comparing the maintainability of selenium WebDriver test suites employing different locators: a case study

Proceedings of the 2013 International Workshop on Joining AcadeMiA and Industry Contributions to testing Automation - JAMAICA 2013, 2013

ABSTRACT

Research paper thumbnail of PESTO: A Tool for Migrating DOM-Based to Visual Web Tests

2014 IEEE 14th International Working Conference on Source Code Analysis and Manipulation, 2014

Automated testing of web applications reduces the effort needed in manual testing. Old 1st genera... more 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 the web elements, based on DOM-oriented commands. Recently, a new 3rd generation of tools came up based on visual image recognition, bringing the promise of wider applicability and simplicity. A tester might ask if the migration towards such new technology is worthwhile, since the manual effort to rewrite a test suite might be overwhelming. In this paper, we propose PESTO, a tool facing the problem of the automated migration of 2nd generation test suites to the 3rd generation. PESTO determines automatically the screen position of each web element located on the DOM by a 2nd generation test case. It then calculates a screenshot image centred around the web element so as to ensure unique visual matching. Then, the entire source code of the DOM-based test suite is transformed into a visual test suite, based on such automatically extracted images and using specific visual commands.

Research paper thumbnail of Model-Driven vs. Code-Centric Maintenance

Research paper thumbnail of What Are the Used UML Diagram Constructs? A Document and Tool Analysis Study covering Activity and Use Case Diagrams

Research paper thumbnail of Unit Testing of Model to Text Transformations

Research paper thumbnail of Repairing Selenium Test Cases: An Industrial Case Study about Web Page Element Localization

This poster presents an industrial case study about test automation and test suite maintenance in... more This poster presents an industrial case study about test automation and test suite maintenance in the context of Web applications. The Web application under test is a Learning Content Management System (eXact learning LCMS). We analysed the costs associated with the realignment of four equivalent Selenium WebDriver test suites, implemented using the page object pattern and different methods to locate web page elements, to a subsequent release of eXact learning LCMS. In our study, the two ID-based test suites required significantly less maintenance effort than the XPath-based ones.

Research paper thumbnail of A Method for Testing Model to Text Transformations

Research paper thumbnail of What are the used Activity Diagram Constructs?-A Survey

Research paper thumbnail of Improving test suites maintainability with the page object pattern: an industrial case study

Research paper thumbnail of Visual vs. DOM-based web locators: An empirical study

Research paper thumbnail of Building VECM-based Systems with a Model Driven Approach: an Experience Report

Recently, we took part in a project with two local companies about the creation of a UML-based Mo... more Recently, we took part in a project with two local companies about the creation of a UML-based Model Driven rigorous method to develop VECM-based systems. VECM is a way to abstract from the details of different Enterprise Content Management (ECM) systems used within the same organization. This report details the experience made using our method to develop V-Protocol: a system able to protocol, sign and archive public competition announcements received by a company.

Research paper thumbnail of Business process modelling: Five styles and a method to choose the most suitable one

Research paper thumbnail of What are the used UML diagrams? A Preliminary Survey

Research paper thumbnail of An exploratory survey on SOA knowledge, adoption and trend in the Italian industry

2012 14th IEEE International Symposium on Web Systems Evolution (WSE), 2012

The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service O... more The main aim of this work is investigating the level of knowledge and diffusion of SOA (Service Oriented Architecture) in the Italian industry. We are also interested to understand what is the trend of SOA (positive or negative?) and what are the methods, technologies and tools really used in the industry.