Beta: a B based testing approach
Autor(a) principal: | |
---|---|
Data de Publicação: | 2016 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFRN |
Texto Completo: | https://repositorio.ufrn.br/jspui/handle/123456789/21417 |
Resumo: | Sistemas de software estão presentes em grande parte das nossas vidas atualmente e, mais do que nunca, eles requerem um alto nível de confiabilidade. Existem várias técnicas de Ver- ificação e Validação (V&V) de software que se preocupam com controle de qualidade, segu- rança, robustez e confiabilidade; as mais conhecidas são Testes de Software e Métodos For- mais. Métodos formais e testes são técnicas que podem se complementar. Enquanto méto- dos formais provêem mecanismos confiáveis para raciocinar sobre o sistema em um nível mais abstrato, técnicas de teste ainda são necessárias para uma validação mais profunda e são frenquentemente requeridas por orgãos de certificação. Levando isto em consideração, BETA provê uma abordagem de testes baseada em modelos para o Método B, suportada por uma ferramenta, que é capaz de gerar testes de unidade a partir de máquinas abstratas B. Nesta tese de doutorado apresentamos melhorias realizadas em BETA e novos estudos de caso realizados para avaliá-la. Dentre as melhorias, integramos critérios de cobertura lógicos à abordagem, revisamos os critérios de cobertura baseados em espaço de entrada que já eram suportados e aperfeiçoamos as últimas etapas do processo de geração de testes. A abordagem agora suporta a geração automática de dados para os oráculos e preâmbulos para os casos de teste; ela também possui uma funcionalidade para concretização dos da- dos de teste e um módulo para gerar scripts de teste executáveis automaticamente. Outro objetivo desta tese foi realizar estudos de caso mais complexos utilizando BETA e avaliar a qualidade dos casos de teste que a abordagem produz. Estes estudos de caso foram os primeiros a avaliar o processo de geração de testes por completo, desde a especificação dos casos de teste até a sua implementação e execução. Em nossos últimos experimentos, analisamos a qualidade dos casos de teste gerados por BETA, considerando cada critério de cobertura suportado, utilizando métricas de cobertuda de código como cobertura de in- struções e ramificações. Também utilizamos testes de mutação para avaliar a capacidade dos casos de teste de detectar faltas na implementação dos modelos. O resultados obtidos foram promissores mostrando que BETA é capaz de detectar faltas introduzidas por progra- madores ou geradores de código e que a abordagem pode obter bons resultados de cobertura para a implementação de um sistema baseado em modelos B. |
id |
UFRN_79002707e8904f2777f96877c87c74ee |
---|---|
oai_identifier_str |
oai:https://repositorio.ufrn.br:123456789/21417 |
network_acronym_str |
UFRN |
network_name_str |
Repositório Institucional da UFRN |
repository_id_str |
|
spelling |
Matos, Ernesto Cid Brasil dehttp://lattes.cnpq.br/4276245931614707http://lattes.cnpq.br/2363575151206774Leuschel, MichaelOliveira, Marcel Vinícius Medeiroshttp://lattes.cnpq.br/1756952696097255Mota, Alexandre Cabralhttp://lattes.cnpq.br/2794026545404598Machado, Patricia Duarte de Limahttp://lattes.cnpq.br/2495918356675019Moreira, Anamaria Martins2016-10-14T00:17:49Z2016-10-14T00:17:49Z2016-04-14MATOS, Ernesto Cid Brasil de. Beta: a B based testing approach. 2016. 148f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.https://repositorio.ufrn.br/jspui/handle/123456789/21417Sistemas de software estão presentes em grande parte das nossas vidas atualmente e, mais do que nunca, eles requerem um alto nível de confiabilidade. Existem várias técnicas de Ver- ificação e Validação (V&V) de software que se preocupam com controle de qualidade, segu- rança, robustez e confiabilidade; as mais conhecidas são Testes de Software e Métodos For- mais. Métodos formais e testes são técnicas que podem se complementar. Enquanto méto- dos formais provêem mecanismos confiáveis para raciocinar sobre o sistema em um nível mais abstrato, técnicas de teste ainda são necessárias para uma validação mais profunda e são frenquentemente requeridas por orgãos de certificação. Levando isto em consideração, BETA provê uma abordagem de testes baseada em modelos para o Método B, suportada por uma ferramenta, que é capaz de gerar testes de unidade a partir de máquinas abstratas B. Nesta tese de doutorado apresentamos melhorias realizadas em BETA e novos estudos de caso realizados para avaliá-la. Dentre as melhorias, integramos critérios de cobertura lógicos à abordagem, revisamos os critérios de cobertura baseados em espaço de entrada que já eram suportados e aperfeiçoamos as últimas etapas do processo de geração de testes. A abordagem agora suporta a geração automática de dados para os oráculos e preâmbulos para os casos de teste; ela também possui uma funcionalidade para concretização dos da- dos de teste e um módulo para gerar scripts de teste executáveis automaticamente. Outro objetivo desta tese foi realizar estudos de caso mais complexos utilizando BETA e avaliar a qualidade dos casos de teste que a abordagem produz. Estes estudos de caso foram os primeiros a avaliar o processo de geração de testes por completo, desde a especificação dos casos de teste até a sua implementação e execução. Em nossos últimos experimentos, analisamos a qualidade dos casos de teste gerados por BETA, considerando cada critério de cobertura suportado, utilizando métricas de cobertuda de código como cobertura de in- struções e ramificações. Também utilizamos testes de mutação para avaliar a capacidade dos casos de teste de detectar faltas na implementação dos modelos. O resultados obtidos foram promissores mostrando que BETA é capaz de detectar faltas introduzidas por progra- madores ou geradores de código e que a abordagem pode obter bons resultados de cobertura para a implementação de um sistema baseado em modelos B.Software systems are a big part of our lives and, more than ever, they require a high level of reliability. There are many software Verification and Validation (V&V) techniques that are concerned with quality control, security, robustness, and reliability; the most widely known are Software Testing and Formal Methods. Formal methods and testing are techniques that can complement each other. While formal methods provide sound mechanisms to reason about the system at a more abstract level, testing techniques are still necessary for a more in-depth validation of the system and are often required by certification standards. Taking this into consideration, BETA provides a tool-supported, model-based testing approach for the B Method that is capable of generating unit tests from abstract B machines. In this thesis, we present improvements made in the BETA approach and tool, and new cases studies used to evaluate them. Among these improvements, we integrated logical coverage criteria into the approach, reviewed the input space criteria that was already supported, and enhanced the final steps of the test generation process. The approach now has support for automatic generation of oracle data and test case preambles, it has a feature for test data concretization, and a module that automatically generates executable test scripts. Another objective of this thesis was to perform more complex case studies using BETA and assess the quality of the test cases it produces. These case studies were the first to evaluate the test generation process as a whole, from test case design to implementation and execution. In our last experiments, we assessed the quality of the test cases generated by BETA, considering each coverage criteria it supports, using code coverage metrics such as statement and branch coverage. We also used mutation testing to evaluate the ability of the generated test cases to identify faults in the model’s implementation. The results obtained were promising, showing that BETA is capable of detecting faults introduced by a programmer or code generation tool and that it can achieve good coverage results for a system’s implementation based on a B model.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOMétodos formaisTeste de softwareMétodo BTestes baseados em modelosBeta: a B based testing approachBETA: uma abordagem de testes baseada em Binfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisPROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALErnestoCidBrasilDeMatos_TESE.pdfErnestoCidBrasilDeMatos_TESE.pdfapplication/pdf4023453https://repositorio.ufrn.br/bitstream/123456789/21417/1/ErnestoCidBrasilDeMatos_TESE.pdf02eea774f85a836a6c96e3f429edfa0eMD51TEXTErnestoCidBrasilDeMatos_TESE.pdf.txtErnestoCidBrasilDeMatos_TESE.pdf.txtExtracted texttext/plain350408https://repositorio.ufrn.br/bitstream/123456789/21417/6/ErnestoCidBrasilDeMatos_TESE.pdf.txtf0e22c144f6bea0fea1448d27379f82aMD56THUMBNAILErnestoCidBrasilDeMatos_TESE.pdf.jpgErnestoCidBrasilDeMatos_TESE.pdf.jpgIM Thumbnailimage/jpeg1993https://repositorio.ufrn.br/bitstream/123456789/21417/7/ErnestoCidBrasilDeMatos_TESE.pdf.jpg75b420ce3463c057c45d9f99d48839ccMD57123456789/214172017-11-03 03:46:18.589oai:https://repositorio.ufrn.br:123456789/21417Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2017-11-03T06:46:18Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false |
dc.title.pt_BR.fl_str_mv |
Beta: a B based testing approach |
dc.title.alternative.pt_BR.fl_str_mv |
BETA: uma abordagem de testes baseada em B |
title |
Beta: a B based testing approach |
spellingShingle |
Beta: a B based testing approach Matos, Ernesto Cid Brasil de CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO Métodos formais Teste de software Método B Testes baseados em modelos |
title_short |
Beta: a B based testing approach |
title_full |
Beta: a B based testing approach |
title_fullStr |
Beta: a B based testing approach |
title_full_unstemmed |
Beta: a B based testing approach |
title_sort |
Beta: a B based testing approach |
author |
Matos, Ernesto Cid Brasil de |
author_facet |
Matos, Ernesto Cid Brasil de |
author_role |
author |
dc.contributor.authorID.pt_BR.fl_str_mv |
|
dc.contributor.authorLattes.none.fl_str_mv |
http://lattes.cnpq.br/4276245931614707 |
dc.contributor.advisorID.pt_BR.fl_str_mv |
|
dc.contributor.advisorLattes.none.fl_str_mv |
http://lattes.cnpq.br/2363575151206774 |
dc.contributor.advisor-co1ID.pt_BR.fl_str_mv |
|
dc.contributor.referees1.none.fl_str_mv |
Oliveira, Marcel Vinícius Medeiros |
dc.contributor.referees1ID.pt_BR.fl_str_mv |
|
dc.contributor.referees1Lattes.none.fl_str_mv |
http://lattes.cnpq.br/1756952696097255 |
dc.contributor.referees2.none.fl_str_mv |
Mota, Alexandre Cabral |
dc.contributor.referees2ID.pt_BR.fl_str_mv |
|
dc.contributor.referees2Lattes.none.fl_str_mv |
http://lattes.cnpq.br/2794026545404598 |
dc.contributor.referees3.none.fl_str_mv |
Machado, Patricia Duarte de Lima |
dc.contributor.referees3ID.pt_BR.fl_str_mv |
|
dc.contributor.referees3Lattes.none.fl_str_mv |
http://lattes.cnpq.br/2495918356675019 |
dc.contributor.author.fl_str_mv |
Matos, Ernesto Cid Brasil de |
dc.contributor.advisor-co1.fl_str_mv |
Leuschel, Michael |
dc.contributor.advisor1.fl_str_mv |
Moreira, Anamaria Martins |
contributor_str_mv |
Leuschel, Michael Moreira, Anamaria Martins |
dc.subject.cnpq.fl_str_mv |
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO |
topic |
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO Métodos formais Teste de software Método B Testes baseados em modelos |
dc.subject.por.fl_str_mv |
Métodos formais Teste de software Método B Testes baseados em modelos |
description |
Sistemas de software estão presentes em grande parte das nossas vidas atualmente e, mais do que nunca, eles requerem um alto nível de confiabilidade. Existem várias técnicas de Ver- ificação e Validação (V&V) de software que se preocupam com controle de qualidade, segu- rança, robustez e confiabilidade; as mais conhecidas são Testes de Software e Métodos For- mais. Métodos formais e testes são técnicas que podem se complementar. Enquanto méto- dos formais provêem mecanismos confiáveis para raciocinar sobre o sistema em um nível mais abstrato, técnicas de teste ainda são necessárias para uma validação mais profunda e são frenquentemente requeridas por orgãos de certificação. Levando isto em consideração, BETA provê uma abordagem de testes baseada em modelos para o Método B, suportada por uma ferramenta, que é capaz de gerar testes de unidade a partir de máquinas abstratas B. Nesta tese de doutorado apresentamos melhorias realizadas em BETA e novos estudos de caso realizados para avaliá-la. Dentre as melhorias, integramos critérios de cobertura lógicos à abordagem, revisamos os critérios de cobertura baseados em espaço de entrada que já eram suportados e aperfeiçoamos as últimas etapas do processo de geração de testes. A abordagem agora suporta a geração automática de dados para os oráculos e preâmbulos para os casos de teste; ela também possui uma funcionalidade para concretização dos da- dos de teste e um módulo para gerar scripts de teste executáveis automaticamente. Outro objetivo desta tese foi realizar estudos de caso mais complexos utilizando BETA e avaliar a qualidade dos casos de teste que a abordagem produz. Estes estudos de caso foram os primeiros a avaliar o processo de geração de testes por completo, desde a especificação dos casos de teste até a sua implementação e execução. Em nossos últimos experimentos, analisamos a qualidade dos casos de teste gerados por BETA, considerando cada critério de cobertura suportado, utilizando métricas de cobertuda de código como cobertura de in- struções e ramificações. Também utilizamos testes de mutação para avaliar a capacidade dos casos de teste de detectar faltas na implementação dos modelos. O resultados obtidos foram promissores mostrando que BETA é capaz de detectar faltas introduzidas por progra- madores ou geradores de código e que a abordagem pode obter bons resultados de cobertura para a implementação de um sistema baseado em modelos B. |
publishDate |
2016 |
dc.date.accessioned.fl_str_mv |
2016-10-14T00:17:49Z |
dc.date.available.fl_str_mv |
2016-10-14T00:17:49Z |
dc.date.issued.fl_str_mv |
2016-04-14 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
MATOS, Ernesto Cid Brasil de. Beta: a B based testing approach. 2016. 148f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufrn.br/jspui/handle/123456789/21417 |
identifier_str_mv |
MATOS, Ernesto Cid Brasil de. Beta: a B based testing approach. 2016. 148f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016. |
url |
https://repositorio.ufrn.br/jspui/handle/123456789/21417 |
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.program.fl_str_mv |
PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO |
dc.publisher.initials.fl_str_mv |
UFRN |
dc.publisher.country.fl_str_mv |
Brasil |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRN instname:Universidade Federal do Rio Grande do Norte (UFRN) instacron:UFRN |
instname_str |
Universidade Federal do Rio Grande do Norte (UFRN) |
instacron_str |
UFRN |
institution |
UFRN |
reponame_str |
Repositório Institucional da UFRN |
collection |
Repositório Institucional da UFRN |
bitstream.url.fl_str_mv |
https://repositorio.ufrn.br/bitstream/123456789/21417/1/ErnestoCidBrasilDeMatos_TESE.pdf https://repositorio.ufrn.br/bitstream/123456789/21417/6/ErnestoCidBrasilDeMatos_TESE.pdf.txt https://repositorio.ufrn.br/bitstream/123456789/21417/7/ErnestoCidBrasilDeMatos_TESE.pdf.jpg |
bitstream.checksum.fl_str_mv |
02eea774f85a836a6c96e3f429edfa0e f0e22c144f6bea0fea1448d27379f82a 75b420ce3463c057c45d9f99d48839cc |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN) |
repository.mail.fl_str_mv |
|
_version_ |
1802117844196917248 |