Operationalization of a solution to automate web forms insertions in the Office for Quality...

17
Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior Pedro Sobreiro, Teresa Bento & Rita Santos-Rocha @ESDRM Santarém, 06-02-2014

description

Solution implemented to automate browser interactions for filling web forms. Developed for the Office for Quality Assurance using Java, Selenium Web Driver and Hibernate...

Transcript of Operationalization of a solution to automate web forms insertions in the Office for Quality...

Page 1: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Operationalization of a solution to automate web forms insertions in the Office for Quality

Assessment of the Sport Sciences School of Rio Maior

Pedro Sobreiro, Teresa Bento & Rita Santos-Rocha @ESDRM

Santarém, 06-02-2014

Page 2: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Agenda

• Why this project

• Approach adopted for development

• Components used

• Examples

• Results

• Conclusions

Page 3: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Why this project?

• Lack of resources and the need of inserting data in web forms of A3ES for all the teachers and curricular units of the ESDRM;

• Lack of time to insert and rigid time stamp to develop the tasks;

• Repetitive human tasks and prone to human errors;

• Information related to curricular units and teachers already inserted in databases;

A3ES - Agência de avaliação e acreditação do ensino superior

Page 4: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Why this project?

• Solution develop with support and positive feedback of top management of ESDRM;

• The head of the Office for Quality Assessment give the conditions for the solution development and supported the initiative;

• The internal support and confidence was fundamental for the development of the solution and for commitment to get work done;

Page 5: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Approach adopted

• No money to buy a solution leaded to the adoption of open source solution and the exclusion of other options;

• Initially was tested iMacros, a free solution for basic features, but with the development of the project was needed additional features;

• Selenium as open source became the only option to develop the solution to automate;

Page 6: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Methods

• The solution was develop using Selenium as an interface to Firefox Web Browser;

• Database adopted for warehousing the data was H2 (Hibernate) interfaced using the driver manager jdbc on the client side;

• The plug-ins used were: (1) selenium IDE 1.9.0; (2) selenium IDE: Java Formatters 1.9.0;

Page 7: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Browser Automation

• The automation was implemented using several Firefox plug-ins as interface to the application developed in Java:

• Selenium plug-ins: Selenium IDE 1.9.0 and Selenium IDE Java Formatters;

Page 8: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Browser Automation

• Additionally were installed third part plug-ins to facilitate the web pages analysis;

• The automation of the interaction was supported with a mixed identification, using TAGS and ID’s;

• Firebug was used for monitoring in real time the web page elements;

• Firepath for editing XPATH and CSS3 expressions, facilitating the tests with web page elements;

Page 9: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Selenium components

• IDE interface for saving macros and testing the initial interaction.

• IDE gives a ground base and facilitates the development of the application to interact with the web form;

• Webdriver gives access to the web browser as remote control, and permits “driving” the browser;

Page 10: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Selenium IDE

• The comands for automating have two basic elements: command and target;

• Basic commands: open url; type; verifyElementPresent; click; clickAndWait;

@driver.get(@base_url + "/si/iportal.php/auth/login/lang/pt/")

@driver.find_element(:id, "portal_username").clear

@driver.find_element(:id, "portal_username").send_keys "username"

@driver.find_element(:id, "portal_password").clear

@driver.find_element(:id, "portal_password").send_keys "password"

@driver.find_element(:id, "ext-gen23").click

# Terminou a autenticação

@driver.find_element(:id, "ext-gen531").click

@driver.find_element(:xpath, "//ul[@id='ext-gen571']/div/li[3]/div/img").click

Page 11: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

WebDriver

• Simulate access to the browser as an end user;

• The development enviroment used:

• Programming IDE: IDEA Intellij

• JUnit to drive the tests and asserts during the tests;

• Selenium WebDriver;

Page 12: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

WebDriver main class

Page 13: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

WebDriver sample code

Page 14: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Webdriver database access

Page 15: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Results

• Reduction of 90% of the estimated times for inserting manually the data;

• 19 hours to inserting data non stop, reduced to 90 minutes – was assumed times for waiting for browser availability before sending data;

• Reduction of error due to the elimination of human insertions;

Page 16: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

Conclusions

• Web browser automation solutions can help reducing time in repetitive tasks by human resources;

• Can be used automating other manual insertions to web browsers;

• Reduce handovers and non value tasks, releasing human resources to other areas;

Page 17: Operationalization of a solution to automate web forms insertions in the Office for Quality Assessment of the Sport Sciences School of Rio Maior

References

• Selenium Project. (2012). Selenium Documentation. Retrieved from http://seleniumhq.org/docs/book/Selenium_Documentation.pdf

• Burns, D. (2012). Selenium 2 Testing Tools Beginners Guide : Learn to use Selenium testing tools from scratch. Birmingham; Mumbai: Packt Publisihing Ltd

• Gundecha, U. (2012). Selenium Testing Tools Cookbook. Birmingham: Packt Pub.

• Niemeyer, P. (2005). Learning Java (3rd ed.). Sebastopol, CA: O’Reilly.

• Bauer, C., & King, G. (2006). Java Persistence with Hibernate (Revised.). Manning Publications.