Uma abordagem para apoiar a identificação de não executabilidade no teste estrutural de software (2023)
- Authors:
- Autor USP: CHOMA NETO, JOÃO - ICMC
- Unidade: ICMC
- Sigla do Departamento: SSC
- DOI: 10.11606/T.55.2023.tde-19122023-151021
- Subjects: SOFTWARES; PROGRAMAÇÃO CONCORRENTE; ENGENHARIA DE SOFTWARE
- Keywords: Concurrent programs; Non-executability problem; Problema da não executabilidade; Software testing; Structural testing; Teste estrutural
- Agências de fomento:
- Language: Português
- Abstract: A atividade de teste de software é fundamental para garantir a qualidade de um produto de software. No entanto, encontrar um conjunto de casos de teste que satisfaça um determinado critério de teste não é uma tarefa simples, pois o domínio de entrada em geral é vasto e diferentes conjuntos de teste podem ser derivados, com eficácia diferente. No contexto de testes estruturais, a não executabilidade (ou requisitos de teste não executáveis) é uma característica presente na maioria dos programas, o que aumenta o custo e o esforço da atividade de teste. Quando programas concorrentes são testados, novos desafios são enfrentados, principalmente relacionados ao não-determinismo. O não-determinismo pode resultar em diferentes saídas de teste possíveis para a mesma entrada de teste, tornando importante testar todas as situações possíveis. No entanto, a não executabilidade torna-se ainda mais complexa nesse contexto. Para mitigar esse problema, foi desenvolvida uma abordagem chamada Nonexec, que permite a utilização automatizada de propriedades baseadas em código fonte capazes de revelar requisitos de teste não executáveis. Um dos primeiros resultados foi a definição de três conjuntos que classificam os requisitos em: requisitos possivelmente não executáveis, não executáveis e dificilmente executáveis. O processo de detecção das propriedades em código fonte ocorreu sem a utilização de dados de entrada. A abordagem obteve sucesso na identificação das propriedades e conseguiu relacionara ocorrência de uma propriedade a como ela afeta os requisitos de teste requeridos por um critério de teste. Durante a avaliação experimental da abordagem, foi utilizado um benchmark de programas concorrentes. Foram utilizados os critérios Todos-usos e Todas-sincronizações. Os resultados indicaram que a abordagem auxiliou o testador na atividade de teste estrutural e, com base na taxa de cobertura do critério Todas-sincronizações, a abordagem conseguiu melhorias estatisticamente significativas. Em conclusão, a abordagem proposta auxilia os profissionais de teste na identificação de requisitos de teste que possam apresentar o problema da não executabilidade. As principais contribuições deste trabalho incluem a elaboração de um catálogo de propriedades, a definição da abordagem Nonexec, a implementação da ferramenta Fi-paths e a integração da ferramenta Valipar. Além disso, foram definidos novos termos relacionados ao problema da não executabilidade, tais como requisito de teste possivelmente não executável e requisito de teste dificilmente executável.
- Imprenta:
- Publisher place: São Carlos
- Date published: 2023
- Data da defesa: 24.08.2023
- Status:
- Artigo possui versão em acesso aberto em repositório (Green Open Access)
- Versão do Documento:
- Versão submetida (Pré-print)
- Acessar versão aberta:
-
ABNT
CHOMA NETO, João. Uma abordagem para apoiar a identificação de não executabilidade no teste estrutural de software. 2023. Tese (Doutorado) – Universidade de São Paulo, São Carlos, 2023. Disponível em: https://teses.usp.br/teses/disponiveis/55/55134/tde-19122023-151021/. Acesso em: 01 abr. 2026. -
APA
Choma Neto, J. (2023). Uma abordagem para apoiar a identificação de não executabilidade no teste estrutural de software (Tese (Doutorado). Universidade de São Paulo, São Carlos. Recuperado de https://teses.usp.br/teses/disponiveis/55/55134/tde-19122023-151021/ -
NLM
Choma Neto J. Uma abordagem para apoiar a identificação de não executabilidade no teste estrutural de software [Internet]. 2023 ;[citado 2026 abr. 01 ] Available from: https://teses.usp.br/teses/disponiveis/55/55134/tde-19122023-151021/ -
Vancouver
Choma Neto J. Uma abordagem para apoiar a identificação de não executabilidade no teste estrutural de software [Internet]. 2023 ;[citado 2026 abr. 01 ] Available from: https://teses.usp.br/teses/disponiveis/55/55134/tde-19122023-151021/ - Ensino, Aprendizagem e Uso Profissional da UML em Maringá e Região
- Are we teaching UML according to what IT companies need?: a survey on the São Carlos-SP region
- Ensino remoto emergencial de engenharia de software com PBL: um relato de experiência
- Bio-inspired optimization to support the test data generation of concurrent software
- How to identify the infeasible test requirements using static analyse?: an exploratory study
- A strategy to support the infeasible test requirements identification
Informações sobre a disponibilidade de versões do artigo em acesso aberto coletadas automaticamente via oaDOI API (Unpaywall).
Por se tratar de integração com serviço externo, podem existir diferentes versões do trabalho (como preprints ou postprints), que podem diferir da versão publicada.
How to cite
A citação é gerada automaticamente e pode não estar totalmente de acordo com as normas
