Automatic Systematic GUI Testing for Web Applications
| Ano de defesa: | 2024 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | , |
| Banca de defesa: | , |
| Tipo de documento: | Dissertação |
| Tipo de acesso: | Acesso aberto |
| Idioma: | por |
| Instituição de defesa: |
Universidade Federal de Campina Grande
|
| Programa de Pós-Graduação: |
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
|
| Departamento: |
Centro de Engenharia Elétrica e Informática - CEEI
|
| País: |
Brasil
|
| Palavras-chave em Português: | |
| Área do conhecimento CNPq: | |
| Link de acesso: | https://dspace.sti.ufcg.edu.br/handle/riufcg/41770 |
Resumo: | A testagem automatizada é crucial para o desenvolvimento de software, proporcionando eficiência, redução de custos e repetibilidade. No nível da Graphical User Interface (GUI), ela valida funcionalidades e detecta falhas em aplicações web. Ferramentas que utilizam processos de geração e execução frequentemente visam identificar falhas visíveis, como travamentos, mensagens de erro e comportamentos inesperados. Nesse contexto, propomos o Cytestion, uma abordagem e ferramenta automatizada e sistemática de teste de GUI para aplicações web, que aplica uma abordagem progressiva e sem scripts. Começando com um caso de teste inicial, ele explora progressivamente os elementos usando erros do console do navegador, status de solicitações HTTP e mensagens de falha da GUI para validação. Para ser eficaz, o Cytestion teve que enfrentar três desafios principais: descoberta automática e única de elementos acionáveis, sincronização robusta com a aplicação em teste e gerenciamento de tempo de execução prolongado em contextos web industriais. Para enfrentar esses desafios, introduzimos e avaliamos a abordagem Unique Actionable Elements Search (UAES), o mecanismo Network Wait e o algoritmo Iterative Deepening URL-Based Search (IDUBS). Essas soluções avançaram o campo da testagem automatizada. Nossos estudos empíricos utilizando quatro aplicações web de código aberto e vinte industriais demonstram o desempenho superior do Cytestion na detecção de falhas e eficiência de tempo de execução em comparação com uma ferramenta de teste GUI do estado da arte. |
| id |
UFCG_86a3b21e55fea07b03a43439e2a6ce25 |
|---|---|
| oai_identifier_str |
oai:dspace.sti.ufcg.edu.br:riufcg/41770 |
| network_acronym_str |
UFCG |
| network_name_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
| repository_id_str |
|
| spelling |
ALVES, Everton Leandro Galdino.BAPTISTA, Cláudio de Souza.MACHADO, Patricia Duarte de Lima.MIRANDA, Breno Alexandro Ferreira.MOURA, T. S.http://lattes.cnpq.br/9245914567689858MOURA, Thiago Santos de.A testagem automatizada é crucial para o desenvolvimento de software, proporcionando eficiência, redução de custos e repetibilidade. No nível da Graphical User Interface (GUI), ela valida funcionalidades e detecta falhas em aplicações web. Ferramentas que utilizam processos de geração e execução frequentemente visam identificar falhas visíveis, como travamentos, mensagens de erro e comportamentos inesperados. Nesse contexto, propomos o Cytestion, uma abordagem e ferramenta automatizada e sistemática de teste de GUI para aplicações web, que aplica uma abordagem progressiva e sem scripts. Começando com um caso de teste inicial, ele explora progressivamente os elementos usando erros do console do navegador, status de solicitações HTTP e mensagens de falha da GUI para validação. Para ser eficaz, o Cytestion teve que enfrentar três desafios principais: descoberta automática e única de elementos acionáveis, sincronização robusta com a aplicação em teste e gerenciamento de tempo de execução prolongado em contextos web industriais. Para enfrentar esses desafios, introduzimos e avaliamos a abordagem Unique Actionable Elements Search (UAES), o mecanismo Network Wait e o algoritmo Iterative Deepening URL-Based Search (IDUBS). Essas soluções avançaram o campo da testagem automatizada. Nossos estudos empíricos utilizando quatro aplicações web de código aberto e vinte industriais demonstram o desempenho superior do Cytestion na detecção de falhas e eficiência de tempo de execução em comparação com uma ferramenta de teste GUI do estado da arte.Automated testing is crucial for software development, providing efficiency, cost reduction, and repeatability. At the Graphical User Interface (GUI) level, it validates functionalities and detects faults in web applications. Tools that utilize generation and execution processes often aim to identify visible failures, such as crashes, error messages, and unexpected behaviors. In this context, we propose Cytestion, an automated and systematic GUI testing approach and tool for web applications, which applies a scriptless and progressive approach. Starting with an initial test case, it progressively explores elements using browser console errors, HTTP request status, and GUI failure messages for validation. In order to be effective, Cytestion had to face three primary challenges: automatic and unique discovery of actionable elements, robust synchronization with the application under test, and managing extended runtime in industrial web contexts. To address these, we introduced and evaluated the Unique Actionable Elements Search (UAES) approach, the NetworkWait mechanism, and the Iterative Deepening URL-Based Search (IDUBS) algorithm. These solutions advanced the field of automated testing. Our empirical studies using four open-source and twenty industrial web applications demonstrate Cytestion superior performance in fault detection and runtime efficiency compared to a state-of-the-art GUI testing tool.Submitted by Helder Soares Dantas (helder-dantas@hotmail.com) on 2025-04-30T12:17:58Z No. of bitstreams: 1 THIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdf: 3565487 bytes, checksum: 66eb929b07d822f605617e69ef8e98c2 (MD5)Made available in DSpace on 2025-04-30T12:17:58Z (GMT). No. of bitstreams: 1 THIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdf: 3565487 bytes, checksum: 66eb929b07d822f605617e69ef8e98c2 (MD5) Previous issue date: 2024-09-05CapesUniversidade Federal de Campina GrandePÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOUFCGBrasilCentro de Engenharia Elétrica e Informática - CEEICiência da ComputaçãoExploração sistemáticaFalhas visíveisDetecção faltasAplicações webFerramenta de testagem automatizadaSystematic explorationVisible failuresFault detectionWeb applicationsAutomated testing toolAutomatic Systematic GUI Testing for Web ApplicationsTeste sistemático automático de GUI para Web Aplicativos2024-09-052025-04-30T12:17:58Z2025-04-302025-04-30T12:17:58Zhttps://dspace.sti.ufcg.edu.br/handle/riufcg/41770MOURA, Thiago Santos de. Automatic systematic GUI testing for web applications. 2024. 142 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2024.info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisporinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCGTEXTTHIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdf.txtTHIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdf.txttext/plain291744https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/3/THIAGO+SANTOS+DE+MOURA+-+DISSERTA%C3%87%C3%83O+-+%28PPGCC%29+2024.pdf.txt2a8b61a3ec1b6359e89de2ebb256418bMD53LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52ORIGINALTHIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdfTHIAGO SANTOS DE MOURA - DISSERTAÇÃO - (PPGCC) 2024.pdfapplication/pdf3565487https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/1/THIAGO+SANTOS+DE+MOURA+-+DISSERTA%C3%87%C3%83O+-+%28PPGCC%29+2024.pdf66eb929b07d822f605617e69ef8e98c2MD51riufcg/417702025-11-18 03:54:05.566oai:dspace.sti.ufcg.edu.br:riufcg/41770Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512025-11-18T06:54:05Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)false |
| dc.title.pt_BR.fl_str_mv |
Automatic Systematic GUI Testing for Web Applications |
| dc.title.alternative.pt_BR.fl_str_mv |
Teste sistemático automático de GUI para Web Aplicativos |
| title |
Automatic Systematic GUI Testing for Web Applications |
| spellingShingle |
Automatic Systematic GUI Testing for Web Applications MOURA, Thiago Santos de. Ciência da Computação Exploração sistemática Falhas visíveis Detecção faltas Aplicações web Ferramenta de testagem automatizada Systematic exploration Visible failures Fault detection Web applications Automated testing tool |
| title_short |
Automatic Systematic GUI Testing for Web Applications |
| title_full |
Automatic Systematic GUI Testing for Web Applications |
| title_fullStr |
Automatic Systematic GUI Testing for Web Applications |
| title_full_unstemmed |
Automatic Systematic GUI Testing for Web Applications |
| title_sort |
Automatic Systematic GUI Testing for Web Applications |
| author |
MOURA, Thiago Santos de. |
| author_facet |
MOURA, Thiago Santos de. |
| author_role |
author |
| dc.contributor.advisor1.fl_str_mv |
ALVES, Everton Leandro Galdino. |
| dc.contributor.advisor2.fl_str_mv |
BAPTISTA, Cláudio de Souza. |
| dc.contributor.referee1.fl_str_mv |
MACHADO, Patricia Duarte de Lima. |
| dc.contributor.referee2.fl_str_mv |
MIRANDA, Breno Alexandro Ferreira. |
| dc.contributor.authorID.fl_str_mv |
MOURA, T. S. |
| dc.contributor.authorLattes.fl_str_mv |
http://lattes.cnpq.br/9245914567689858 |
| dc.contributor.author.fl_str_mv |
MOURA, Thiago Santos de. |
| contributor_str_mv |
ALVES, Everton Leandro Galdino. BAPTISTA, Cláudio de Souza. MACHADO, Patricia Duarte de Lima. MIRANDA, Breno Alexandro Ferreira. |
| dc.subject.cnpq.fl_str_mv |
Ciência da Computação |
| topic |
Ciência da Computação Exploração sistemática Falhas visíveis Detecção faltas Aplicações web Ferramenta de testagem automatizada Systematic exploration Visible failures Fault detection Web applications Automated testing tool |
| dc.subject.por.fl_str_mv |
Exploração sistemática Falhas visíveis Detecção faltas Aplicações web Ferramenta de testagem automatizada Systematic exploration Visible failures Fault detection Web applications Automated testing tool |
| description |
A testagem automatizada é crucial para o desenvolvimento de software, proporcionando eficiência, redução de custos e repetibilidade. No nível da Graphical User Interface (GUI), ela valida funcionalidades e detecta falhas em aplicações web. Ferramentas que utilizam processos de geração e execução frequentemente visam identificar falhas visíveis, como travamentos, mensagens de erro e comportamentos inesperados. Nesse contexto, propomos o Cytestion, uma abordagem e ferramenta automatizada e sistemática de teste de GUI para aplicações web, que aplica uma abordagem progressiva e sem scripts. Começando com um caso de teste inicial, ele explora progressivamente os elementos usando erros do console do navegador, status de solicitações HTTP e mensagens de falha da GUI para validação. Para ser eficaz, o Cytestion teve que enfrentar três desafios principais: descoberta automática e única de elementos acionáveis, sincronização robusta com a aplicação em teste e gerenciamento de tempo de execução prolongado em contextos web industriais. Para enfrentar esses desafios, introduzimos e avaliamos a abordagem Unique Actionable Elements Search (UAES), o mecanismo Network Wait e o algoritmo Iterative Deepening URL-Based Search (IDUBS). Essas soluções avançaram o campo da testagem automatizada. Nossos estudos empíricos utilizando quatro aplicações web de código aberto e vinte industriais demonstram o desempenho superior do Cytestion na detecção de falhas e eficiência de tempo de execução em comparação com uma ferramenta de teste GUI do estado da arte. |
| publishDate |
2024 |
| dc.date.issued.fl_str_mv |
2024-09-05 |
| dc.date.accessioned.fl_str_mv |
2025-04-30T12:17:58Z |
| dc.date.available.fl_str_mv |
2025-04-30 2025-04-30T12:17:58Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://dspace.sti.ufcg.edu.br/handle/riufcg/41770 |
| dc.identifier.citation.fl_str_mv |
MOURA, Thiago Santos de. Automatic systematic GUI testing for web applications. 2024. 142 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2024. |
| url |
https://dspace.sti.ufcg.edu.br/handle/riufcg/41770 |
| identifier_str_mv |
MOURA, Thiago Santos de. Automatic systematic GUI testing for web applications. 2024. 142 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2024. |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.publisher.none.fl_str_mv |
Universidade Federal de Campina Grande |
| dc.publisher.program.fl_str_mv |
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO |
| dc.publisher.initials.fl_str_mv |
UFCG |
| dc.publisher.country.fl_str_mv |
Brasil |
| dc.publisher.department.fl_str_mv |
Centro de Engenharia Elétrica e Informática - CEEI |
| publisher.none.fl_str_mv |
Universidade Federal de Campina Grande |
| dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFCG instname:Universidade Federal de Campina Grande (UFCG) instacron:UFCG |
| instname_str |
Universidade Federal de Campina Grande (UFCG) |
| instacron_str |
UFCG |
| institution |
UFCG |
| reponame_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
| collection |
Biblioteca Digital de Teses e Dissertações da UFCG |
| bitstream.url.fl_str_mv |
https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/3/THIAGO+SANTOS+DE+MOURA+-+DISSERTA%C3%87%C3%83O+-+%28PPGCC%29+2024.pdf.txt https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/2/license.txt https://dspace.sti.ufcg.edu.br/bitstream/riufcg/41770/1/THIAGO+SANTOS+DE+MOURA+-+DISSERTA%C3%87%C3%83O+-+%28PPGCC%29+2024.pdf |
| bitstream.checksum.fl_str_mv |
2a8b61a3ec1b6359e89de2ebb256418b 8a4605be74aa9ea9d79846c1fba20a33 66eb929b07d822f605617e69ef8e98c2 |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG) |
| repository.mail.fl_str_mv |
bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br |
| _version_ |
1863363567349137408 |