SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
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
Agenda
•
•
•
•
•
•

Why this project
Approach adopted for development
Components used
Examples
Results
Conclusions
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
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;
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;
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;
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;
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;
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;
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
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;
WebDriver main class
WebDriver sample code
Webdriver database access
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;
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;
References
• Selenium Project. (2012). Selenium Documentation.
Retrieved from
http://seleniumhq.org/docs/book/Selenium_Documentatio
n.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.

Mais conteúdo relacionado

Mais procurados

Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instrumentsArtem Nagornyi
 
Amit (Automation Testing)
Amit (Automation Testing)Amit (Automation Testing)
Amit (Automation Testing)AMIT SINGH
 
Dog food conference creating modular webparts with require js in sharepoint
Dog food conference   creating modular webparts with require js in sharepointDog food conference   creating modular webparts with require js in sharepoint
Dog food conference creating modular webparts with require js in sharepointfahey252
 
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...TestingAR Meetup
 
Afzal-Khan-Resume
Afzal-Khan-ResumeAfzal-Khan-Resume
Afzal-Khan-Resumeafzal khan
 
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutionsFrontend microservices: architectures and solutions
Frontend microservices: architectures and solutionsMikhail Kuznetcov
 

Mais procurados (11)

Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instruments
 
Getting started with angular js
Getting started with angular jsGetting started with angular js
Getting started with angular js
 
Kasi Resume
Kasi ResumeKasi Resume
Kasi Resume
 
Manish_Gupta
Manish_GuptaManish_Gupta
Manish_Gupta
 
Selenium presentation
Selenium presentationSelenium presentation
Selenium presentation
 
Amit (Automation Testing)
Amit (Automation Testing)Amit (Automation Testing)
Amit (Automation Testing)
 
Dog food conference creating modular webparts with require js in sharepoint
Dog food conference   creating modular webparts with require js in sharepointDog food conference   creating modular webparts with require js in sharepoint
Dog food conference creating modular webparts with require js in sharepoint
 
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...
TestingAR XX - Protractor e2e Test Framework - Introduction what we have lear...
 
Afzal-Khan-Resume
Afzal-Khan-ResumeAfzal-Khan-Resume
Afzal-Khan-Resume
 
Resume
ResumeResume
Resume
 
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutionsFrontend microservices: architectures and solutions
Frontend microservices: architectures and solutions
 

Destaque

File lamp4 ptknaratif
File lamp4 ptknaratifFile lamp4 ptknaratif
File lamp4 ptknaratifHari Listy
 
In-browser Memory Testing
In-browser Memory TestingIn-browser Memory Testing
In-browser Memory TestingvodQA
 
選書(補助)ツールの開発と運用(提供用)
選書(補助)ツールの開発と運用(提供用)選書(補助)ツールの開発と運用(提供用)
選書(補助)ツールの開発と運用(提供用)Izuru Atarashi
 
Free tibet
Free tibetFree tibet
Free tibetsknsz
 
Presentation
PresentationPresentation
Presentationdxinl2000
 
Vysali - QC based framework
Vysali - QC based frameworkVysali - QC based framework
Vysali - QC based frameworkvodQA
 
Agile Automation is not this Deepak P
Agile Automation is not this Deepak PAgile Automation is not this Deepak P
Agile Automation is not this Deepak PvodQA
 
Altima better creditcardform-1.0.0_instructions
Altima better creditcardform-1.0.0_instructionsAltima better creditcardform-1.0.0_instructions
Altima better creditcardform-1.0.0_instructionsAlex Levashov
 
VodQA_Parallelizingcukes_AmanKing
VodQA_Parallelizingcukes_AmanKingVodQA_Parallelizingcukes_AmanKing
VodQA_Parallelizingcukes_AmanKingvodQA
 
Web vn
Web vnWeb vn
Web vnAnam
 
Evaluation – question 3
Evaluation – question 3Evaluation – question 3
Evaluation – question 3JakeHafer
 
Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Anam
 
Seminarium prawa dla ludzi reguły dla biznesu
Seminarium prawa dla ludzi reguły dla biznesuSeminarium prawa dla ludzi reguły dla biznesu
Seminarium prawa dla ludzi reguły dla biznesusknsz
 
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkoły
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkołySpotkanie z krzysztofem śliwińskim w ramach wiosennej szkoły
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkołysknsz
 
Sachin tuli
Sachin tuliSachin tuli
Sachin tulisknsz
 
Srinivas, Nirmalaya - Testing a massively multi-player online game
Srinivas, Nirmalaya - Testing a massively multi-player online gameSrinivas, Nirmalaya - Testing a massively multi-player online game
Srinivas, Nirmalaya - Testing a massively multi-player online gamevodQA
 
Linkedin for Lawyers
Linkedin for LawyersLinkedin for Lawyers
Linkedin for LawyersJa-Nae Duane
 

Destaque (20)

File lamp4 ptknaratif
File lamp4 ptknaratifFile lamp4 ptknaratif
File lamp4 ptknaratif
 
In-browser Memory Testing
In-browser Memory TestingIn-browser Memory Testing
In-browser Memory Testing
 
Measure or Die
Measure or DieMeasure or Die
Measure or Die
 
選書(補助)ツールの開発と運用(提供用)
選書(補助)ツールの開発と運用(提供用)選書(補助)ツールの開発と運用(提供用)
選書(補助)ツールの開発と運用(提供用)
 
Free tibet
Free tibetFree tibet
Free tibet
 
Presentation
PresentationPresentation
Presentation
 
CPPC Presentation 1011
CPPC Presentation 1011CPPC Presentation 1011
CPPC Presentation 1011
 
Bombers book pt
Bombers book ptBombers book pt
Bombers book pt
 
Vysali - QC based framework
Vysali - QC based frameworkVysali - QC based framework
Vysali - QC based framework
 
Agile Automation is not this Deepak P
Agile Automation is not this Deepak PAgile Automation is not this Deepak P
Agile Automation is not this Deepak P
 
Altima better creditcardform-1.0.0_instructions
Altima better creditcardform-1.0.0_instructionsAltima better creditcardform-1.0.0_instructions
Altima better creditcardform-1.0.0_instructions
 
VodQA_Parallelizingcukes_AmanKing
VodQA_Parallelizingcukes_AmanKingVodQA_Parallelizingcukes_AmanKing
VodQA_Parallelizingcukes_AmanKing
 
Web vn
Web vnWeb vn
Web vn
 
Evaluation – question 3
Evaluation – question 3Evaluation – question 3
Evaluation – question 3
 
Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12
 
Seminarium prawa dla ludzi reguły dla biznesu
Seminarium prawa dla ludzi reguły dla biznesuSeminarium prawa dla ludzi reguły dla biznesu
Seminarium prawa dla ludzi reguły dla biznesu
 
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkoły
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkołySpotkanie z krzysztofem śliwińskim w ramach wiosennej szkoły
Spotkanie z krzysztofem śliwińskim w ramach wiosennej szkoły
 
Sachin tuli
Sachin tuliSachin tuli
Sachin tuli
 
Srinivas, Nirmalaya - Testing a massively multi-player online game
Srinivas, Nirmalaya - Testing a massively multi-player online gameSrinivas, Nirmalaya - Testing a massively multi-player online game
Srinivas, Nirmalaya - Testing a massively multi-player online game
 
Linkedin for Lawyers
Linkedin for LawyersLinkedin for Lawyers
Linkedin for Lawyers
 

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

Web testing with Selenium
Web testing with SeleniumWeb testing with Selenium
Web testing with SeleniumXBOSoft
 
Knowledge of web ui for automation testing
Knowledge  of web ui for automation testingKnowledge  of web ui for automation testing
Knowledge of web ui for automation testingArtem Korchevyi
 
Testing mit Codeception: Full-stack testing PHP framework
Testing mit Codeception: Full-stack testing PHP frameworkTesting mit Codeception: Full-stack testing PHP framework
Testing mit Codeception: Full-stack testing PHP frameworkSusannSgorzaly
 
Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully Applitools
 
SCQAA-SF Selenium Presentation
SCQAA-SF Selenium  PresentationSCQAA-SF Selenium  Presentation
SCQAA-SF Selenium PresentationSujit Ghosh
 
JUDCon 2014: Gearing up for mobile development with AeroGear
JUDCon 2014: Gearing up for mobile development with AeroGearJUDCon 2014: Gearing up for mobile development with AeroGear
JUDCon 2014: Gearing up for mobile development with AeroGearprajods
 
Selenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingSelenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingAustin Marie Gay
 
Selenium for everyone
Selenium for everyoneSelenium for everyone
Selenium for everyoneTft Us
 
Selenium training
Selenium trainingSelenium training
Selenium trainingShivaraj R
 
20150211 seo in drupal presentation
20150211 seo in drupal presentation20150211 seo in drupal presentation
20150211 seo in drupal presentationDagmar Muth
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Modelbgerman
 
JavaSkop - Automation Skopje
JavaSkop - Automation SkopjeJavaSkop - Automation Skopje
JavaSkop - Automation SkopjeAna Sarbescu
 

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

Web testing with Selenium
Web testing with SeleniumWeb testing with Selenium
Web testing with Selenium
 
Knowledge of web ui for automation testing
Knowledge  of web ui for automation testingKnowledge  of web ui for automation testing
Knowledge of web ui for automation testing
 
Testing mit Codeception: Full-stack testing PHP framework
Testing mit Codeception: Full-stack testing PHP frameworkTesting mit Codeception: Full-stack testing PHP framework
Testing mit Codeception: Full-stack testing PHP framework
 
Sai_Resume
Sai_ResumeSai_Resume
Sai_Resume
 
Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully
 
SCQAA-SF Selenium Presentation
SCQAA-SF Selenium  PresentationSCQAA-SF Selenium  Presentation
SCQAA-SF Selenium Presentation
 
JUDCon 2014: Gearing up for mobile development with AeroGear
JUDCon 2014: Gearing up for mobile development with AeroGearJUDCon 2014: Gearing up for mobile development with AeroGear
JUDCon 2014: Gearing up for mobile development with AeroGear
 
Selenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingSelenium and Open Source Advanced Testing
Selenium and Open Source Advanced Testing
 
Selenium testing - Handle Elements in WebDriver
Selenium testing - Handle Elements in WebDriver Selenium testing - Handle Elements in WebDriver
Selenium testing - Handle Elements in WebDriver
 
Selenium for everyone
Selenium for everyoneSelenium for everyone
Selenium for everyone
 
Selenium.pptx
Selenium.pptxSelenium.pptx
Selenium.pptx
 
Resume
ResumeResume
Resume
 
Selenium training
Selenium trainingSelenium training
Selenium training
 
SamSegalResume
SamSegalResumeSamSegalResume
SamSegalResume
 
VINOD_6yrs
VINOD_6yrsVINOD_6yrs
VINOD_6yrs
 
Vasudeo_5.8_Years_of_Exp
Vasudeo_5.8_Years_of_ExpVasudeo_5.8_Years_of_Exp
Vasudeo_5.8_Years_of_Exp
 
20150211 seo in drupal presentation
20150211 seo in drupal presentation20150211 seo in drupal presentation
20150211 seo in drupal presentation
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Model
 
JavaSkop - Automation Skopje
JavaSkop - Automation SkopjeJavaSkop - Automation Skopje
JavaSkop - Automation Skopje
 

Mais de Pedro Sobreiro

Desempenho previsão abandono
Desempenho previsão abandonoDesempenho previsão abandono
Desempenho previsão abandonoPedro Sobreiro
 
Previsão da prática desportiva recorrendo a séries temporais
Previsão da prática desportiva recorrendo a séries temporaisPrevisão da prática desportiva recorrendo a séries temporais
Previsão da prática desportiva recorrendo a séries temporaisPedro Sobreiro
 
Previsão de vendas utilizando séries temporais
Previsão de vendas utilizando séries temporaisPrevisão de vendas utilizando séries temporais
Previsão de vendas utilizando séries temporaisPedro Sobreiro
 
Operacionalização da estratégia no Município de Ourém como aproximação para a...
Operacionalização da estratégia no Município de Ourém como aproximação para a...Operacionalização da estratégia no Município de Ourém como aproximação para a...
Operacionalização da estratégia no Município de Ourém como aproximação para a...Pedro Sobreiro
 
Integrating Knowledge Management in a Business Strategy Process Operationaliz...
Integrating Knowledge Management in a Business Strategy Process Operationaliz...Integrating Knowledge Management in a Business Strategy Process Operationaliz...
Integrating Knowledge Management in a Business Strategy Process Operationaliz...Pedro Sobreiro
 
Identification of Improvement priorities in organizational capabilities: A ca...
Identification of Improvement priorities in organizational capabilities: A ca...Identification of Improvement priorities in organizational capabilities: A ca...
Identification of Improvement priorities in organizational capabilities: A ca...Pedro Sobreiro
 
Presentation to create awareness in the top management of sport organization ...
Presentation to create awareness in the top management of sport organization ...Presentation to create awareness in the top management of sport organization ...
Presentation to create awareness in the top management of sport organization ...Pedro Sobreiro
 
Melhoria Organizacional
Melhoria OrganizacionalMelhoria Organizacional
Melhoria OrganizacionalPedro Sobreiro
 
Operacionalização da estratégia nas organizações desportivas através da defin...
Operacionalização da estratégia nas organizações desportivas através da defin...Operacionalização da estratégia nas organizações desportivas através da defin...
Operacionalização da estratégia nas organizações desportivas através da defin...Pedro Sobreiro
 
Business Process Management in Sports Organizations: A case study in the Euro...
Business Process Management in Sports Organizations: A case study in the Euro...Business Process Management in Sports Organizations: A case study in the Euro...
Business Process Management in Sports Organizations: A case study in the Euro...Pedro Sobreiro
 

Mais de Pedro Sobreiro (12)

Desempenho previsão abandono
Desempenho previsão abandonoDesempenho previsão abandono
Desempenho previsão abandono
 
Permanência
PermanênciaPermanência
Permanência
 
Previsão da prática desportiva recorrendo a séries temporais
Previsão da prática desportiva recorrendo a séries temporaisPrevisão da prática desportiva recorrendo a séries temporais
Previsão da prática desportiva recorrendo a séries temporais
 
Previsao abandono
Previsao abandonoPrevisao abandono
Previsao abandono
 
Previsão de vendas utilizando séries temporais
Previsão de vendas utilizando séries temporaisPrevisão de vendas utilizando séries temporais
Previsão de vendas utilizando séries temporais
 
Operacionalização da estratégia no Município de Ourém como aproximação para a...
Operacionalização da estratégia no Município de Ourém como aproximação para a...Operacionalização da estratégia no Município de Ourém como aproximação para a...
Operacionalização da estratégia no Município de Ourém como aproximação para a...
 
Integrating Knowledge Management in a Business Strategy Process Operationaliz...
Integrating Knowledge Management in a Business Strategy Process Operationaliz...Integrating Knowledge Management in a Business Strategy Process Operationaliz...
Integrating Knowledge Management in a Business Strategy Process Operationaliz...
 
Identification of Improvement priorities in organizational capabilities: A ca...
Identification of Improvement priorities in organizational capabilities: A ca...Identification of Improvement priorities in organizational capabilities: A ca...
Identification of Improvement priorities in organizational capabilities: A ca...
 
Presentation to create awareness in the top management of sport organization ...
Presentation to create awareness in the top management of sport organization ...Presentation to create awareness in the top management of sport organization ...
Presentation to create awareness in the top management of sport organization ...
 
Melhoria Organizacional
Melhoria OrganizacionalMelhoria Organizacional
Melhoria Organizacional
 
Operacionalização da estratégia nas organizações desportivas através da defin...
Operacionalização da estratégia nas organizações desportivas através da defin...Operacionalização da estratégia nas organizações desportivas através da defin...
Operacionalização da estratégia nas organizações desportivas através da defin...
 
Business Process Management in Sports Organizations: A case study in the Euro...
Business Process Management in Sports Organizations: A case study in the Euro...Business Process Management in Sports Organizations: A case study in the Euro...
Business Process Management in Sports Organizations: A case study in the Euro...
 

Último

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 

Último (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 

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

  • 1. 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
  • 2. Agenda • • • • • • Why this project Approach adopted for development Components used Examples Results Conclusions
  • 3. 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
  • 4. 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;
  • 5. 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;
  • 6. 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;
  • 7. 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;
  • 8. 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;
  • 9. 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;
  • 10. 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
  • 11. 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;
  • 15. 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;
  • 16. 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;
  • 17. References • Selenium Project. (2012). Selenium Documentation. Retrieved from http://seleniumhq.org/docs/book/Selenium_Documentatio n.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.