Maurizio Leotta - Academia.edu (original) (raw)
Uploads
Papers by Maurizio Leotta
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.
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.
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.
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.
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.
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).
Proceedings of the 2013 International Workshop on Joining AcadeMiA and Industry Contributions to testing Automation - JAMAICA 2013, 2013
ABSTRACT
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.
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.
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.
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.
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.
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.
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.
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.
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.
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).
Proceedings of the 2013 International Workshop on Joining AcadeMiA and Industry Contributions to testing Automation - JAMAICA 2013, 2013
ABSTRACT
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.
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.
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.
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.