Uma Abordagem para Geração de Casos de Teste Estrutural Baseada em Modelos

  • Leandro T. Costa PUCRS
  • Flávio M. Oliveira PUCRS
  • Elder M. Rodrigues PUCRS
  • Maicon B. da Silveira PUCRS
  • Avelino F. Zorzo PUCRS

Resumo


O teste estrutural, ou teste caixa-branca, é uma técnica para gerar casos de teste a partir da análise do código fonte. Atualmente, existem muitas ferramentas baseadas neste tipo de teste, e.g. JaBUTi e Poke-Tool. No entanto, apesar dos benefícios destas ferramentas, é necessário executar algumas tarefas manualmente, e.g. a elaboração de casos de teste. Isto torna o processo de teste ineficiente e suscetível a falhas. Desta forma, este artigo apresenta um formato para casos de testes independente de tecnologia, i.e., uma estrutura abstrata para teste estrutural. O artigo descreve, também, como esta estrutura abstrata é inserida em um processo que a usa para, automaticamente, gerar e executar casos de teste concretos em uma tecnologia de teste estrutural específica.

Referências

Avizienis, A., Laprie, J. C., Randell, B., and Landwehr, C. (2004). Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transaction on Dependable Secure Computing, 1:11–33.

Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., and Pretschner, A. (2005). Model-Based Testing of Reactive Systems: Advanced Lectures. Springer.

Chaim, M. L. (1991). POKE-TOOL: A Tool to Support Data Flow Based Structural Test of Programs. Master’s thesis, DCA/FEEC/UNICAMP, Campinas, SP, Brasil.

Clements, P. and Northrop, L. (2001). Software Product Lines: Practices and Patterns. Addison-Wesley Longman Publishing.

Dalal, S. R., Jain, A., Karunanithi, N., Leaton, J. M., Lott, C. M., Patton, G. C., and Horowitz, B. M. (1999). Model-Based Testing in Practice. In Proceedings of the International Conference on Software Engineering, pages 285–294.

Dara, R., Li, S., Liu, W., Smith-Ghorbani, A., and Tahvildari, L. (2009). Using Dynamic Execution Data to Generate Test Cases. In Proceedings of the IEEE International Conference on Software Maintenance, pages 433–436.

Delamaro, M. E., Maldonado, J. C., and Jino, M. (2007). Introdução ao Teste de Software. Elsevier Editora.

Dias Neto, A. C., Subramanyan, R., Vieira, M., and Travassos, G. H. (2007). A Survey on Model-Based Testing Approaches: A Systematic Review. In Proceedings of the 1st ACM International Workshop on Empirical Assessment of Software Engineering Languages and Technologies, pages 31–36.

El-Far, I. K. and Whittaker, J. A. (2001). Model-based Software Testing. Wiley.

Eler, M. M., Endo, A. T., Masiero, P. C., Delamaro, M. E., Maldonado, J. C., Vincenzi, A. M. R., Chaim, M. L., and Beder, D. M. (2009). JaBUTiService: A Web Service for Structural Testing of Java Programs. In Proceedings of the 33rd IEEE International on Software Engineering Workshop, pages 69–76.

Halili, E. (2008). Apache JMeter. Packt Publishing.

Hamlet, D. and Taylor, R. (1990). Partition Testing does not Inspire Confidence (Program Testing). IEEE Transactions on Software Engineering, 16:1402–1411.

Krishnan, P. (2004). Uniform Descriptions for Model Based Testing. In Proceedings of the Australian Software Engineering Conference, pages 96–105.

Lin, M., Chen, Y., Yu, K., and Wu, G. (2011). Lazy Symbolic Execution for Test Data Generation. IET Software, pages 132–141.

Pezzè, M. and Young, M. (2008). Teste e Análise de Software - Processos, Princı́pios e Técnicas. John Wiley & Sons.

Rodrigues, E. M., Viccari, L. D., Zorzo, A. F., and Gimenes, I. M. (2010). PLeTs Tool - Test Automation Using Software Product Lines and Model Based Testing. In Proceedings of the 22th International Conference on Software Engineering and Knowledge Engineering, pages 483–488.

Sarma, M., Murthy, P. V. R., Jell, S., and Ulrich, A. (2010). Model-based testing in industry: a case study with two MBT tools. In Proceedings of the 5th Workshop on Automation of Software Test, pages 87–90.

Silveira, M. B., Rodrigues, E. M., Zorzo, A. F., Costa, L. T., Vieira, H. V., and de Oliveira, F. M. (2011). Generation of Scripts for Performance Testing Based on UML Models. In Proceedings of the 23rd International Conference on Software Engineering and Knowledge Engineering, pages 258–563.

Vincenzi., A. M. R., Maldonado, J. C., Wong, W. E., and Delamaro, M. E. (2005). Coverage Testing of Java Programs and Components. Science of Computer Programming, 56:211–230.

Yang, Q., Li, J. J., and Weiss, D. (2006). A survey of coverage based testing tools. In Proceedings of the 2006 international workshop on Automation of software test, pages 99–103.
Publicado
30/04/2012
COSTA, Leandro T.; OLIVEIRA, Flávio M.; RODRIGUES, Elder M.; DA SILVEIRA, Maicon B.; ZORZO, Avelino F.. Uma Abordagem para Geração de Casos de Teste Estrutural Baseada em Modelos. In: WORKSHOP DE TESTES E TOLERÂNCIA A FALHAS (WTF), 13. , 2012, Ouro Preto/MG. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2012 . p. 87-100. ISSN 2595-2684. DOI: https://doi.org/10.5753/wtf.2012.23082.