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

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

Embed Size (px)

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...

Citation preview

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.