SlideShare uma empresa Scribd logo
1 de 20
Reverse Engineering of GUI Models for Testing André M. P. Grilo, Ana C. R. Paiva, João Pascoal Faria CISTI 2010
Contents Introduction Reverse Engineering Approaches Reverse Engineering and Testing Process REGUI Tool Case Study Conclusions CISTI 2010
Motivation CISTI 2010
Context CISTI 2010 AMBER iTest Visual modelling m()pre post {body} Visual to formal model translation  UML visual model new oracle Model to implementation mapping Reverse Engineering Coverage information Test case generation GUI mapping code & data (adapter) Test coverage analysis SpecExplorer new new Test  Execution  REGUI Tool GUI Application Under Test  Test  suite (abstract) Spec Explorer Test results
Objectives CISTI 2010 Diminish effort required to construct the model Automate the interactive exploratory process Extract: Structural Information Navigation Steps Behaviour Produce a Spec# Model
Static Approach Dynamic Approach CISTI 2010 Reverse Engineering Approaches
Reverse Engineering and Testing Process CISTI 2010
Description of the Algorithm (1/2) CISTI 2010 Phase One
Description of the Algorithm (2/2) CISTI 2010 Phase Two
Description of the Algorithm (3/3) CISTI 2010 Phase Three
Rules to Infer Behaviour CISTI 2010
REGUI Tool CISTI 2010
Case Study CISTI 2010
Structural Information CISTI 2010
Navigational Steps CISTI 2010
Inferring Dependencies CISTI 2010
Spec# Model //Notepad window [Action] void SetTextDocument(string typedText) modifies Document.text && MenuItemFind.IsEnabled; requiresIsEnabled("Notepad");  { //TODO} [Action] void MenuItemFind() requires text!="" && IsEnabled("Notepad") ; ensuresIsOpen("Find")); { //TODO} … //Find dialog [Action] void SetTextFindWhat(string str) modifies TextFindWhat.text && ButtonFindNext.IsEnabled; requiresIsEnabled("Find");{ TextFindWhat.text = str; } [Action] void FindNext() requiresIsEnabled("Find");  { //TODO} … CISTI 2010
Conclusions Presented a new technique to obtain a model of the GUI’s structure and some of its behaviour.  Model kept in a XML file Spec# The reverse engineering process combines automatic with manual exploration which solves some of the “blocking problems” found in the approaches Using the REGUI tool, the effort in the construction of the GUI model was reduced  CISTI 2010
Main Contributions A New Reverse Engineering Approach A REGUI Tool CISTI 2010
Future Work Implement new algorithms to extend the set of dependencies among GUI objects found automatically by the tool; We also intend to validate the approach with more complex software applications. CISTI 2010

Mais conteúdo relacionado

Semelhante a Reverse engineering of gui models

IRJET- Review of Automatic Feature Recognition of Cylindrical Parts
IRJET- Review of Automatic Feature Recognition of Cylindrical PartsIRJET- Review of Automatic Feature Recognition of Cylindrical Parts
IRJET- Review of Automatic Feature Recognition of Cylindrical PartsIRJET Journal
 
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...IRJET Journal
 
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...csandit
 
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...Young-Min Baek
 
Application of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process OptimizationApplication of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process OptimizationBrian Elvesæter
 
Visualization of high dimensional data set
Visualization of high dimensional data setVisualization of high dimensional data set
Visualization of high dimensional data setAboul Ella Hassanien
 
Virtual Simulation Of Systems
Virtual Simulation Of SystemsVirtual Simulation Of Systems
Virtual Simulation Of SystemsHites
 
A survey on modeling guidelines for quantity takeoff-oriented BIM-based design
A survey on modeling guidelines for quantity takeoff-oriented BIM-based designA survey on modeling guidelines for quantity takeoff-oriented BIM-based design
A survey on modeling guidelines for quantity takeoff-oriented BIM-based designAbdoul-Aziz Gansonre
 
An investigation of extreme programming practices and its impact on software ...
An investigation of extreme programming practices and its impact on software ...An investigation of extreme programming practices and its impact on software ...
An investigation of extreme programming practices and its impact on software ...Roberto Pepato
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Riccardo Coppola
 
Model Transformations to adapt Component-based GUIs using an ATL-based tool
Model Transformations to adapt Component-based GUIs using an ATL-based toolModel Transformations to adapt Component-based GUIs using an ATL-based tool
Model Transformations to adapt Component-based GUIs using an ATL-based toolApplied Computing Group
 
An Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesAn Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesGabriel Moreira
 
SOFTWARE MANUAL TESTING SYLLABUS
SOFTWARE MANUAL TESTING SYLLABUSSOFTWARE MANUAL TESTING SYLLABUS
SOFTWARE MANUAL TESTING SYLLABUSSHPINE TECHNOLOGIES
 

Semelhante a Reverse engineering of gui models (20)

IRJET- Review of Automatic Feature Recognition of Cylindrical Parts
IRJET- Review of Automatic Feature Recognition of Cylindrical PartsIRJET- Review of Automatic Feature Recognition of Cylindrical Parts
IRJET- Review of Automatic Feature Recognition of Cylindrical Parts
 
Presentation
PresentationPresentation
Presentation
 
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...
SIMULATION OF ROBOTIC ARM BY USING NI-LABVIEW FOR THE INDUSTRIAL APPLICATION ...
 
Savitha_Resume
Savitha_ResumeSavitha_Resume
Savitha_Resume
 
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...
DESIGN AND IMPLEMENTATION OF INTEL-SPONSORED REAL-TIME MULTIVIEW FACE DETECTI...
 
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...
[Presentation] Automated Model-Based Android GUI Testing using Multi-Level GU...
 
Application of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process OptimizationApplication of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process Optimization
 
Visualization of high dimensional data set
Visualization of high dimensional data setVisualization of high dimensional data set
Visualization of high dimensional data set
 
Virtual Simulation Of Systems
Virtual Simulation Of SystemsVirtual Simulation Of Systems
Virtual Simulation Of Systems
 
Resume swaminathan balaraman
Resume  swaminathan balaramanResume  swaminathan balaraman
Resume swaminathan balaraman
 
Resume swaminathan balaraman
Resume  swaminathan balaramanResume  swaminathan balaraman
Resume swaminathan balaraman
 
A survey on modeling guidelines for quantity takeoff-oriented BIM-based design
A survey on modeling guidelines for quantity takeoff-oriented BIM-based designA survey on modeling guidelines for quantity takeoff-oriented BIM-based design
A survey on modeling guidelines for quantity takeoff-oriented BIM-based design
 
An investigation of extreme programming practices and its impact on software ...
An investigation of extreme programming practices and its impact on software ...An investigation of extreme programming practices and its impact on software ...
An investigation of extreme programming practices and its impact on software ...
 
Variation response method CAE simulation suite
Variation response method CAE simulation suiteVariation response method CAE simulation suite
Variation response method CAE simulation suite
 
Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
Model Transformations to adapt Component-based GUIs using an ATL-based tool
Model Transformations to adapt Component-based GUIs using an ATL-based toolModel Transformations to adapt Component-based GUIs using an ATL-based tool
Model Transformations to adapt Component-based GUIs using an ATL-based tool
 
An Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesAn Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming Practices
 
Q-ImPrESS
Q-ImPrESSQ-ImPrESS
Q-ImPrESS
 
SOFTWARE MANUAL TESTING SYLLABUS
SOFTWARE MANUAL TESTING SYLLABUSSOFTWARE MANUAL TESTING SYLLABUS
SOFTWARE MANUAL TESTING SYLLABUS
 

Último

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Último (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Reverse engineering of gui models

  • 1. Reverse Engineering of GUI Models for Testing André M. P. Grilo, Ana C. R. Paiva, João Pascoal Faria CISTI 2010
  • 2. Contents Introduction Reverse Engineering Approaches Reverse Engineering and Testing Process REGUI Tool Case Study Conclusions CISTI 2010
  • 4. Context CISTI 2010 AMBER iTest Visual modelling m()pre post {body} Visual to formal model translation UML visual model new oracle Model to implementation mapping Reverse Engineering Coverage information Test case generation GUI mapping code & data (adapter) Test coverage analysis SpecExplorer new new Test Execution REGUI Tool GUI Application Under Test Test suite (abstract) Spec Explorer Test results
  • 5. Objectives CISTI 2010 Diminish effort required to construct the model Automate the interactive exploratory process Extract: Structural Information Navigation Steps Behaviour Produce a Spec# Model
  • 6. Static Approach Dynamic Approach CISTI 2010 Reverse Engineering Approaches
  • 7. Reverse Engineering and Testing Process CISTI 2010
  • 8. Description of the Algorithm (1/2) CISTI 2010 Phase One
  • 9. Description of the Algorithm (2/2) CISTI 2010 Phase Two
  • 10. Description of the Algorithm (3/3) CISTI 2010 Phase Three
  • 11. Rules to Infer Behaviour CISTI 2010
  • 17. Spec# Model //Notepad window [Action] void SetTextDocument(string typedText) modifies Document.text && MenuItemFind.IsEnabled; requiresIsEnabled("Notepad"); { //TODO} [Action] void MenuItemFind() requires text!="" && IsEnabled("Notepad") ; ensuresIsOpen("Find")); { //TODO} … //Find dialog [Action] void SetTextFindWhat(string str) modifies TextFindWhat.text && ButtonFindNext.IsEnabled; requiresIsEnabled("Find");{ TextFindWhat.text = str; } [Action] void FindNext() requiresIsEnabled("Find"); { //TODO} … CISTI 2010
  • 18. Conclusions Presented a new technique to obtain a model of the GUI’s structure and some of its behaviour. Model kept in a XML file Spec# The reverse engineering process combines automatic with manual exploration which solves some of the “blocking problems” found in the approaches Using the REGUI tool, the effort in the construction of the GUI model was reduced CISTI 2010
  • 19. Main Contributions A New Reverse Engineering Approach A REGUI Tool CISTI 2010
  • 20. Future Work Implement new algorithms to extend the set of dependencies among GUI objects found automatically by the tool; We also intend to validate the approach with more complex software applications. CISTI 2010
  • 22. Thanks for your time CISTI 2010

Notas do Editor

  1. Aqui irá estar a estrutura da apresentação
  2. Nowadays’ software systems GUIs. GUIs are the mediators between systems and usersquality is a crucial point in the users’ decision of using them. GUI testing is a critical activity aimed at finding defects in the GUI or in the overall applicationHowever, GUI testing is a very time consuming V&V activity. The application of model-based testing techniques and tools can be very helpful to systematize and automate GUI testing. Still, the effort required to construct a detailed and precise enough model for testing purposes, by an automated reverse engineering process.
  3. An Automated Model-Based User Interface Testing Environment – AMBER iTestO meutrabalhoinsere-senumprojecto de maiorambito.Aplicação de Técnicas de Testes Baseados em Modelosaos testes de InterfacesQueresulta da parceria entre a Critical Sw e a FEUP
  4. Os objectivos são dimnuir o esforço necessário para a contrução do modelo.Automatizar o processo de exploração Extrair as - Informações Estruturais das janelas da aplicação - Gravar os passos necessários para navegar entre diferentes janelas da aplicação - Descobrir diferentes conportamentos nas janelas da aplicação – isto é, descobrir as dependências entre objectos da interface gráficaComo output do meu trabalho Surge o modelo Spec#(Sharp) devido à utilização da ferrramenta Spec Explorer k permite uma automatização do processo de geração e execução de testes
  5. Static Approach, in which the static representations of the system (source code) are analysed without executing the system. The static approach requires access to the source code of the system, which is not always available. Static approaches are particularly well suited for extracting information about the internal structure of the system and dependencies among structural elements;Dynamic approach, the system is executed and its external behaviour is analysed. Dynamic approaches are the only option when the source code is not available. They are well suited to extract the physical structure of the system GUI and some of its behaviour, but are more difficult to automate. We focus on dynamic approaches because our goal is to extract information for black-box testing purposes.
  6. Conformeditoanteriormente o objectivo principal é diminuir o esforçopara a construção do modelo da GUI para testes baseados em modelos.A ferramentaapresentada é capaz de construir um modelopreliminar em Spec# atraves da interacção com a GUI. AS informaçõesobtidaspeloprocesso de engenhariareversa é guardado em XML sendo e seguidaconvertidopara Spec#(Sharp). Mas o facto de termos um códigointermédio do XML permite a exportaçãoparaoutraslinguagensmaisfacilmente. Começamosporcapturar as informaçõesestruturais da GUI (the hierarchical structure of windows and interactive controls within windows, their properties and navigation map) e tambemalgumainformaçãocomportamental. Em seguida o modelopreliminarobtido é completado e validadomanualmente.Dps é usadoparacriaruma suite de testes automaticamenteusando a ferramenta Spec Explorer. A execução de testes tb é suportadopelo Spec Explorer. Para os testesseremexecutado é ncessárioinformação de mapeamento entre as acções do modelo e as acçãoconcretas da aplicação. Estainformação é recolhidadurtante o processo deengenhariareversa e podesercompletamanualmentesendogravadanumficheiro XML. Na execução dos testes asacçõestantosaoexecutadasnaespecificaçãotantocomonaaplicação. Nummodo de “lock-step”comparandoosresultadosobtidos. Sempre k ocorraumainconsistencia, esta é reportada. Defeitosencontradossaocorrigidossendo em seguidaexecutadauma nova iteração do processo.
  7. Explicar o Algoritmo
  8. Explicar o Algoritmo
  9. Explicar o Algoritmo
  10. Algoritmo de Detecção das Dependencias
  11. Em seguida um caso prático que valida a abordagem proposta.
  12. Explicar o XML -> Identificar na Janela
  13. Explicar o XML -> Identificar na Janela
  14. Explicar o XML -> Identificar na Janela
  15. Um extracto do Modelo gerado em Spec#
  16. In our experiments, by using the REGUI tool, 50% (on average) of the Spec# model was generated automatically.
  17. Uma ferramenta……
  18. Implementação de novos algoritmos para aumentar o conjunto de dependências e controlos suportadosMelhorar o modelo produzido -> Tornando-o + completo.
  19. Espero k a minha apresentação não tenha sido longaK não se tenham morrido de aborrecimento, e k não vos tenha passado pela cabeça destruir o projector E passamos agora para a fase da discussão …