Beta: uma ferramenta para geração de testes de unidade a partir de especificações B

Detalhes bibliográficos
Ano de defesa: 2012
Autor(a) principal: Matos, Ernesto Cid Brasil de
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal do Rio Grande do Norte
BR
UFRN
Programa de Pós-Graduação em Sistemas e Computação
Ciência da Computação
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufrn.br/jspui/handle/123456789/18042
Resumo: Formal methods and software testing are tools to obtain and control software quality. When used together, they provide mechanisms for software specification, verification and error detection. Even though formal methods allow software to be mathematically verified, they are not enough to assure that a system is free of faults, thus, software testing techniques are necessary to complement the process of verification and validation of a system. Model Based Testing techniques allow tests to be generated from other software artifacts such as specifications and abstract models. Using formal specifications as basis for test creation, we can generate better quality tests, because these specifications are usually precise and free of ambiguity. Fernanda Souza (2009) proposed a method to define test cases from B Method specifications. This method used information from the machine s invariant and the operation s precondition to define positive and negative test cases for an operation, using equivalent class partitioning and boundary value analysis based techniques. However, the method proposed in 2009 was not automated and had conceptual deficiencies like, for instance, it did not fit in a well defined coverage criteria classification. We started our work with a case study that applied the method in an example of B specification from the industry. Based in this case study we ve obtained subsidies to improve it. In our work we evolved the proposed method, rewriting it and adding characteristics to make it compatible with a test classification used by the community. We also improved the method to support specifications structured in different components, to use information from the operation s behavior on the test case generation process and to use new coverage criterias. Besides, we have implemented a tool to automate the method and we have submitted it to more complex case studies
id UFRN_e2f549ba261c9db396ed69f4504f9389
oai_identifier_str oai:repositorio.ufrn.br:123456789/18042
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Beta: uma ferramenta para geração de testes de unidade a partir de especificações Bengenharia de softwaremétodo Btestes de softwaretestes baseados em modelostestes de unidadesoftware engineeringB methodsoftware testingmodel based testingunit testingCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAOFormal methods and software testing are tools to obtain and control software quality. When used together, they provide mechanisms for software specification, verification and error detection. Even though formal methods allow software to be mathematically verified, they are not enough to assure that a system is free of faults, thus, software testing techniques are necessary to complement the process of verification and validation of a system. Model Based Testing techniques allow tests to be generated from other software artifacts such as specifications and abstract models. Using formal specifications as basis for test creation, we can generate better quality tests, because these specifications are usually precise and free of ambiguity. Fernanda Souza (2009) proposed a method to define test cases from B Method specifications. This method used information from the machine s invariant and the operation s precondition to define positive and negative test cases for an operation, using equivalent class partitioning and boundary value analysis based techniques. However, the method proposed in 2009 was not automated and had conceptual deficiencies like, for instance, it did not fit in a well defined coverage criteria classification. We started our work with a case study that applied the method in an example of B specification from the industry. Based in this case study we ve obtained subsidies to improve it. In our work we evolved the proposed method, rewriting it and adding characteristics to make it compatible with a test classification used by the community. We also improved the method to support specifications structured in different components, to use information from the operation s behavior on the test case generation process and to use new coverage criterias. Besides, we have implemented a tool to automate the method and we have submitted it to more complex case studiesCoordenação de Aperfeiçoamento de Pessoal de Nível SuperiorMétodos formais e testes são ferramentas para obtenção e controle de qualidade de software. Quando utilizadas em conjunto, elas provêem mecanismos para especificação, verificação e detecção de falhas de um software. Apesar de permitir que sistemas sejam matematicamente verificados, métodos formais não são suficientes pra garantir que um sistema esteja livre de defeitos, logo, técnicas de teste de software são necessárias para completar o processo de verificação e validação de um sistema. Técnicas de Testes Baseados em Modelos permitem que testes sejam gerados a partir de outros artefatos de software como especificações e modelos abstratos. Ao utilizarmos especificações formais como base para a criação de testes, podemos gerar testes de melhor qualidade pois estas especificações costumam ser precisas e livres de ambiguidade. Fernanda Souza (2009) propôs um método para definir casos de teste a partir de especificações do Método B. Este método utilizava informações do invariante de uma máquina e das pré-condições de uma operação para definir casos de teste positivos e negativos para tal operação, através de técnicas baseadas em particionamento em classes de equivalência e análise de valor limite. No entanto, a proposta de 2009 não incluía automação e possuía algumas deficiências conceituais como, por exemplo, não se encaixar exatamente em uma classificação de critérios de cobertura bem definida. Iniciamos nosso trabalho com um estudo de caso que aplicou o método a um exemplo de especificação B proveniente da indústria. A partir deste estudo obtivemos subsídios para o aperfeiçoá-lo. Em nosso trabalho aperfeiçoamos o método proposto, reescrevendo e adicionando características para torná-lo compatível com uma classificação de testes utilizada pela comunidade. O método também foi melhorado para suportar especificações estruturadas em vários componentes, utilizar informações sobre o comportamento da operação durante a criação de casos de teste e utilizar novos critérios de cobertura. Além disso, implementamos uma ferramenta para automatizá-lo e o submetemos a estudos de caso mais complexosUniversidade Federal do Rio Grande do NorteBRUFRNPrograma de Pós-Graduação em Sistemas e ComputaçãoCiência da ComputaçãoMoreira, Anamaria Martinshttp://lattes.cnpq.br/4276245931614707http://lattes.cnpq.br/5861361541278876Coelho, Roberta de Souzahttp://lattes.cnpq.br/9854634275938452Machado, Patrícia Duarte de Limahttp://lattes.cnpq.br/2495918356675019Matos, Ernesto Cid Brasil de2014-12-17T15:48:00Z2012-09-202014-12-17T15:48:00Z2012-02-10info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfapplication/pdfMATOS, Ernesto Cid Brasil de. Beta: uma ferramenta para geração de testes de unidade a partir de especificações B. 2012. 127 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Rio Grande do Norte, Natal, 2012.https://repositorio.ufrn.br/jspui/handle/123456789/18042porinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRN2017-11-04T15:31:44Zoai:repositorio.ufrn.br:123456789/18042Repositório InstitucionalPUBhttp://repositorio.ufrn.br/oai/repositorio@bczm.ufrn.bropendoar:2017-11-04T15:31:44Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.none.fl_str_mv Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
title Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
spellingShingle Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
Matos, Ernesto Cid Brasil de
engenharia de software
método B
testes de software
testes baseados em modelos
testes de unidade
software engineering
B method
software testing
model based testing
unit testing
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
title_short Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
title_full Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
title_fullStr Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
title_full_unstemmed Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
title_sort Beta: uma ferramenta para geração de testes de unidade a partir de especificações B
author Matos, Ernesto Cid Brasil de
author_facet Matos, Ernesto Cid Brasil de
author_role author
dc.contributor.none.fl_str_mv Moreira, Anamaria Martins

http://lattes.cnpq.br/4276245931614707

http://lattes.cnpq.br/5861361541278876
Coelho, Roberta de Souza

http://lattes.cnpq.br/9854634275938452
Machado, Patrícia Duarte de Lima

http://lattes.cnpq.br/2495918356675019
dc.contributor.author.fl_str_mv Matos, Ernesto Cid Brasil de
dc.subject.por.fl_str_mv engenharia de software
método B
testes de software
testes baseados em modelos
testes de unidade
software engineering
B method
software testing
model based testing
unit testing
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
topic engenharia de software
método B
testes de software
testes baseados em modelos
testes de unidade
software engineering
B method
software testing
model based testing
unit testing
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
description Formal methods and software testing are tools to obtain and control software quality. When used together, they provide mechanisms for software specification, verification and error detection. Even though formal methods allow software to be mathematically verified, they are not enough to assure that a system is free of faults, thus, software testing techniques are necessary to complement the process of verification and validation of a system. Model Based Testing techniques allow tests to be generated from other software artifacts such as specifications and abstract models. Using formal specifications as basis for test creation, we can generate better quality tests, because these specifications are usually precise and free of ambiguity. Fernanda Souza (2009) proposed a method to define test cases from B Method specifications. This method used information from the machine s invariant and the operation s precondition to define positive and negative test cases for an operation, using equivalent class partitioning and boundary value analysis based techniques. However, the method proposed in 2009 was not automated and had conceptual deficiencies like, for instance, it did not fit in a well defined coverage criteria classification. We started our work with a case study that applied the method in an example of B specification from the industry. Based in this case study we ve obtained subsidies to improve it. In our work we evolved the proposed method, rewriting it and adding characteristics to make it compatible with a test classification used by the community. We also improved the method to support specifications structured in different components, to use information from the operation s behavior on the test case generation process and to use new coverage criterias. Besides, we have implemented a tool to automate the method and we have submitted it to more complex case studies
publishDate 2012
dc.date.none.fl_str_mv 2012-09-20
2012-02-10
2014-12-17T15:48:00Z
2014-12-17T15:48:00Z
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 MATOS, Ernesto Cid Brasil de. Beta: uma ferramenta para geração de testes de unidade a partir de especificações B. 2012. 127 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Rio Grande do Norte, Natal, 2012.
https://repositorio.ufrn.br/jspui/handle/123456789/18042
identifier_str_mv MATOS, Ernesto Cid Brasil de. Beta: uma ferramenta para geração de testes de unidade a partir de especificações B. 2012. 127 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Rio Grande do Norte, Natal, 2012.
url https://repositorio.ufrn.br/jspui/handle/123456789/18042
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.format.none.fl_str_mv application/pdf
application/pdf
dc.publisher.none.fl_str_mv Universidade Federal do Rio Grande do Norte
BR
UFRN
Programa de Pós-Graduação em Sistemas e Computação
Ciência da Computação
publisher.none.fl_str_mv Universidade Federal do Rio Grande do Norte
BR
UFRN
Programa de Pós-Graduação em Sistemas e Computação
Ciência da Computação
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
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv repositorio@bczm.ufrn.br
_version_ 1855758852309385216