NAT2TEST: generating test cases from natural language requirements based on CSP

Gustavo Henrique Pôrto de Carvalho · 2016

Testes baseados em modelos (MBT) consiste em criar modelos para especificar o comportamento esperado de sistemas e, a partir destes, gerar testes que verificam se implementacoes possuem o nivel de confiabilidade esperado. No contexto de sistemas criticos, estes modelos sao normalmente (semi)formais e deseja-se uma definicao precisa das condicoes necessarias para garantir que uma implementacao e correta em relacao ao modelo da especificacao. Esta definicao caracteriza uma relacao de conformidade, que pode ser usada para provar que uma estrategia de MBT e consistente (sound). Apesar dos beneficios, aqueles sem familiaridade com a sintaxe e a semântica dos modelos empregados podem relutar em adotar estes formalismos. Aqui, propoe-se uma estrategia de MBT para gerar casos de teste a partir de linguagem natural controlada (CNL). Esta estrategia (NAT2TEST) dispensa a necessidade de conhecer a sintaxe e a semântica das notacoes formais utilizadas internamente, uma vez que os modelos intermediarios sao gerados automaticamente a partir de requisitos em linguagem natural. Esta estrategia e apropriada para sistemas reativos baseados em fluxos de dados: uma classe de sistemas embarcados cujas entradas e saidas estao sempre disponiveis como sinais. Estes sistemas tambem podem ter comportamento dependente do tempo (discreto ou continuo). Na estrategia NAT2TEST, inicialmente, os requisitos sao analisados sintaticamente de acordo com a CNL proposta neste trabalho para descrever sistemas reativos. Em seguida, a semântica informal dos requisitos e caracterizada utilizando a teoria de gramatica de casos. Posteriormente, deriva-se uma representacao formal dos requisitos considerando um modelo definido neste trabalho para sistemas reativos. Finalmente, este modelo e traduzido em uma especificacao em communicating sequential processes (CSP) para permitir a geracao de testes. Este trabalho prova que a estrategia de testes proposta e consistente considerando a relacao de conformidade temporal baseada em entradas e saidas tambem definida aqui: csptio. Alem de CSP, foi explorada a geracao de outras notacoes formais (SCR e IMR), a partir das quais e possivel gerar casos de teste usando ferramentas comerciais (T-VEC e RT-Tester, respectivamente). Todo o processo e automatizado pela ferramenta NAT2TEST. A estrategia NAT2TEST foi avaliada considerando exemplos da literatura, da industria aeroespacial (Embraer) e da automotiva (Mercedes). Foram analisados o desempenho e a capacidade de detectar defeitos gerados atraves de operadores de mutacao. Em geral, a estrategia NAT2TEST apresentou melhores resultados do que a referencia adotada: testes aleatorios. A estrategia NAT2TEST tambem foi comparada com ferramentas comerciais relevantes.

Read the paper · More papers on PaperTik