Uso de testes metamórficos para verificação de aplicação chatbot

Chatbots are software that make use of Artificial Intelligence (IA) to provide interaction between humans and machines through Natural Language (NL), resembling a conversation between two people. It is a current topic that has received a lot of attention in recent years. However, this type of app...

ver descrição completa

Na minha lista:
Detalhes bibliográficos
Autor principal: Silva, Wallinson de Lima
Outros Autores: Barbosa, Eiji Adachi Medeiros
Formato: Dissertação
Idioma:pt_BR
Publicado em: Universidade Federal do Rio Grande do Norte
Assuntos:
Endereço do item:https://repositorio.ufrn.br/handle/123456789/49527
Tags: Adicionar Tag
Sem tags, seja o primeiro a adicionar uma tag!
id ri-123456789-49527
record_format dspace
institution Repositório Institucional
collection RI - UFRN
language pt_BR
topic Testes metamórficos
Teste de software em chatbots
Geração de casos de teste
CNPQ::ENGENHARIAS
spellingShingle Testes metamórficos
Teste de software em chatbots
Geração de casos de teste
CNPQ::ENGENHARIAS
Silva, Wallinson de Lima
Uso de testes metamórficos para verificação de aplicação chatbot
description Chatbots are software that make use of Artificial Intelligence (IA) to provide interaction between humans and machines through Natural Language (NL), resembling a conversation between two people. It is a current topic that has received a lot of attention in recent years. However, this type of application presents a behavior that is sometimes unpredictable, as different users can request the same set of actions in different ways and the application can return something different to each of the users. This makes the software testing activity somewhat complex, since it is not simple to define the test oracle. The test oracle is the process that verifies the test result, judging the response of the application, program or function as correct or incorrect through specification and planning. In this scenario, an appropriate testing technique to deal with the oracle problem is Metamorphic Testing (MT). This technique was proposed as a solution to minimize the oracle definition problem, since the application response verification process is performed by the definition of Metamorphic Relations (MRs), elements that assume the role of the oracle. Metamorphic relationships are properties of the test object application that define the behavior that the application must maintain when submitted to a given test case. However, despite Metamorphic Testing being a well-established technique to deal with the problem of the lack of a test oracle, it is still little explored in the context of chatbots. Thus, the objective of this work was to investigate the applicability and effectiveness of the MT technique in a chatbot application developed by a public company. Therefore, it was necessary to develop a tool to automate the test process by applying the MT concepts. For the evaluation of the technique we selected 22 Source Test Cases (STCs) divided into 3 Intents and input this information into the automation tool to run the tests of the 20 Metamorphic Relations. Through the execution of the tool, it was possible to generate more than 4100 Follow-up Test Cases (FTCs), derived from the STCs. The verification took place in two test batteries using two versions of the same application with 3 months of development difference. With the application of the MT technique, it was observed that 25% of the FTCs revealed defects, representing more than 900 disapproved FTCs, per version tested.
author2 Barbosa, Eiji Adachi Medeiros
author_facet Barbosa, Eiji Adachi Medeiros
Silva, Wallinson de Lima
format masterThesis
author Silva, Wallinson de Lima
author_sort Silva, Wallinson de Lima
title Uso de testes metamórficos para verificação de aplicação chatbot
title_short Uso de testes metamórficos para verificação de aplicação chatbot
title_full Uso de testes metamórficos para verificação de aplicação chatbot
title_fullStr Uso de testes metamórficos para verificação de aplicação chatbot
title_full_unstemmed Uso de testes metamórficos para verificação de aplicação chatbot
title_sort uso de testes metamórficos para verificação de aplicação chatbot
publisher Universidade Federal do Rio Grande do Norte
publishDate 2022
url https://repositorio.ufrn.br/handle/123456789/49527
work_keys_str_mv AT silvawallinsondelima usodetestesmetamorficosparaverificacaodeaplicacaochatbot
_version_ 1773965489971658752
spelling ri-123456789-495272022-10-08T00:10:39Z Uso de testes metamórficos para verificação de aplicação chatbot Silva, Wallinson de Lima Barbosa, Eiji Adachi Medeiros http://lattes.cnpq.br/0893768070215855 http://lattes.cnpq.br/8833409749475821 Kulesza, Uirá http://lattes.cnpq.br/0189095897739979 Coelho, Roberta de Souza http://lattes.cnpq.br/9854634275938452 Ferrari, Fabiano Cutigi Testes metamórficos Teste de software em chatbots Geração de casos de teste CNPQ::ENGENHARIAS Chatbots are software that make use of Artificial Intelligence (IA) to provide interaction between humans and machines through Natural Language (NL), resembling a conversation between two people. It is a current topic that has received a lot of attention in recent years. However, this type of application presents a behavior that is sometimes unpredictable, as different users can request the same set of actions in different ways and the application can return something different to each of the users. This makes the software testing activity somewhat complex, since it is not simple to define the test oracle. The test oracle is the process that verifies the test result, judging the response of the application, program or function as correct or incorrect through specification and planning. In this scenario, an appropriate testing technique to deal with the oracle problem is Metamorphic Testing (MT). This technique was proposed as a solution to minimize the oracle definition problem, since the application response verification process is performed by the definition of Metamorphic Relations (MRs), elements that assume the role of the oracle. Metamorphic relationships are properties of the test object application that define the behavior that the application must maintain when submitted to a given test case. However, despite Metamorphic Testing being a well-established technique to deal with the problem of the lack of a test oracle, it is still little explored in the context of chatbots. Thus, the objective of this work was to investigate the applicability and effectiveness of the MT technique in a chatbot application developed by a public company. Therefore, it was necessary to develop a tool to automate the test process by applying the MT concepts. For the evaluation of the technique we selected 22 Source Test Cases (STCs) divided into 3 Intents and input this information into the automation tool to run the tests of the 20 Metamorphic Relations. Through the execution of the tool, it was possible to generate more than 4100 Follow-up Test Cases (FTCs), derived from the STCs. The verification took place in two test batteries using two versions of the same application with 3 months of development difference. With the application of the MT technique, it was observed that 25% of the FTCs revealed defects, representing more than 900 disapproved FTCs, per version tested. Chatbots são softwares que fazem uso de Inteligência Artificial para proporcionar a interação entre humanos e máquinas por meio de Linguagem Natural (LN), assemelhando- se a uma conversação entre duas pessoas. É um tema atual e que tem recebido bastante atenção nos últimos anos. Entretanto, esse tipo de aplicação apresenta um comportamento imprevisível, pois diferentes usuários podem solicitar um mesmo conjunto de ações de diferentes maneiras e a aplicação pode retornar algo diferente para cada um dos usuários. Isso torna a atividade de teste de software algo complexa, visto que não é simples definir o oráculo de testes. O oráculo de teste é o processo que verifica o resultado do teste, julgando a resposta da aplicação, programa ou função como correta ou incorreta mediante especificação e planejamento. Neste cenário, uma técnica de teste apropriada para lidar com o problema do oráculo é o Teste Metamórfico (TM). Essa técnica foi proposta como uma solução para minimizar o problema de definição de oráculo, pois o processo de verificação da resposta da aplicação é feito pela definição de Relações Metamórficas (RMs), elementos que assumem o papel do oráculo. As relações metamórficas são propriedades da aplicação objeto de teste que definem o comportamento que a aplicação deve manter quando submetida a um determinado caso de teste. Todavia, apesar de Testes Metamórficos serem uma técnica bem estabelecida para lidar com o problema da falta de um oráculo de testes, ela ainda é pouco explorada no contexto de chatbots. Dessa forma, o objetivo desse trabalho consistiu em averiguar a aplicabilidade e efetividade da técnica de TM em uma aplicação chatbot desenvolvida por uma empresa pública. Para tanto, foi necessário o desenvolvimento de uma ferramenta para automatização do processo de teste aplicando os conceitos do TM. Para a avaliação da técnica foram selecionados 22 Casos de Teste de Origem (CTOs) divididos em 3 Intenções e imputamos essa informação na ferramenta de automação para execução dos testes das 20 Relações Metamórficas. Por meio da execução da ferramenta, foi possível gerar mais de 4100 Casos de Teste Acompanhamento (CTAs), derivados dos CTOs. A verificação ocorreu em duas baterias de teste utilizando duas versões da mesma aplicação com 3 meses de diferença de desenvolvimento. Com a aplicação da técnica de TM foi observado que 25% dos CTAs revelaram defeitos, representando mais de 900 CTAs reprovados, por versão testada. 2022-10-08T00:10:06Z 2022-10-08T00:10:06Z 2022-07-26 masterThesis SILVA, Wallinson de Lima. Uso de testes metamórficos para verificação de aplicação chatbot. Orientador: Eiji Adachi Medeiros Barbosa. 2022. 77f. Dissertação (Mestrado Profissional em Tecnologia da Informação) - Instituto Metrópole Digital, Universidade Federal do Rio Grande do Norte, Natal, 2022. https://repositorio.ufrn.br/handle/123456789/49527 pt_BR Acesso Aberto application/pdf Universidade Federal do Rio Grande do Norte Brasil UFRN PROGRAMA DE PÓS-GRADUAÇÃO EM TECNOLOGIA DA INFORMAÇÃO