Uma Proposta de Boas Práticas para Aplicação de Teste Baseado em Modelos em Métodos Ágeis
Resumo
Este trabalho analisa como Teste Baseado em Modelos (Model-based Testing MBT) pode ser aplicado em times que utilizam métodos ágeis, mais especificamente Scrum. Para isso, realizamos dois estudos: um mapeamento sistemático de literatura e uma pesquisa de campo. Os resultados do mapeamento sistemático foram utilizados para identificar os trabalhos já publicados que apresentam dificuldades encontradas no processo de MBT quando aplicado em projetos ágeis de desenvolvimento de software. A pesquisa de campo, por sua vez, foi realizada através de entrevistas realizadas com profissionais que trabalham focados em testes de software em equipes ágeis. Neste estudo objetivamos coletar as opiniões dos profissionais a respeito da utilização de MBT no contexto de suas equipes. Por fim, corroboramos o resultado obtido na entrevista com os especialistas e os resultados obtidos com o mapeamento sistemático e elaboramos uma proposta de boas práticas para implementação de MBT em equipes ágeis. Os resultados atuais, obtidos através de uma survey indicam que a proposta é adequada para o contexto a qual se propõe.Referências
B. K. Aichernig, F. Lorber, and S. Tiran. Formal test-driven development with verified test cases. In Model-Driven Engineering and Software Development (MODELSWARD), 2014 2nd International Conference on, 2014.
L. Apfelbaum and J. Doyle. Model based testing. In Software Quality Week Conference, 1997.
K. Beck, M. Beedle, A. Van Bennekum, A. Cockburn, W. Cunningham, M. Fowler, J. Grenning, J. Highsmith, A. Hunt, R. Jeffries, et al. Manifesto for agile software development. http://www.agilemanifesto.org, 2001. acessado em 07/03/2017.
M. Bernardino, E. M. Rodrigues, and A. F. Zorzo. Performance testing modeling: an empirical evaluation of DSL and UML-based approaches. In Proceedings of the 31st Annual ACM Symposium on Applied Computing, 2016.
M. Bernardino, A. F. Zorzo, and E. M. Rodrigues. Canopus: A domain-specific language for modeling performance testing. In 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST), 2016.
D. A. Carlson. Designing xml vocabularies with uml (poster session). In Addendum to the 2000 Proceedings of the Conference on Object-oriented Programming, Systems, Languages, and Applications (Addendum), 2000.
T. S. Chow. Testing software design modeled by finite-state machines. IEEE Transactions on Software Engineering, 4(3), 1978.
L. T. Costa, R. M. Czekster, F. M. de Oliveira, E. M. Rodrigues, M. B. da Silveira, and A. F. Zorzo. Generating performance test scripts and scenarios based on abstract intermediate models. In Proceedings of the 24nd International Conference on Software Engineering and Knowledge Engineering, 2010, 2012.
L. Crispin and J. Gregory. Agile testing: A practical guide for testers and agile teams. Pearson Education, 2009.
V. Entin, M. Winder, B. Zhang, and S. Christmann. Combining model-based and capturereplay testing techniques of graphical user interfaces: An industrial approach. In Proceedings of the IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops, 2011.
V. Entin, M. Winder, B. Zhang, and S. Christmann. Introducing model-based testing in an industrial Scrum project. In Proceedings of the 7th International Workshop on Automation of Software Test, 2012.
V. Entin, M. Winder, B. Zhang, and A. Claus. A process to increase the model quality in the context of model-based testing. In Proceedings of the IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2015.
D. Jalalinasab and R. Ramsin. Towards model-based testing patterns for enhancing agile methodologies. In SoMeT, 2012.
M. Katara and A. Kervinen. Making model-based testing more agile: a use case driven approach. In Proceedings of the Haifa Verification Conference, 2006.
B. Kitchenham, O. P. Brereton, D. Budgen, M. Turner, J. Bailey, and S. Linkman. Systematic literature reviews in software engineering–a systematic literature review. Information and software technology, 51(1), 2009.
N. Li, A. Escalona, and T. Kamal. Skyfire: Model-based testing with cucumber. In Proceedings of the IEEE International Conference on Software Testing, Verification and Validation, ICST 2016, 2016.
G. Luo, A. Petrenko, and G. v. Bochmann. Selecting test sequences for partially-specified nondeterministic finite state machines. In Protocol Test Systems. 1995.
E. M. Rodrigues, F. M. de Oliveira, L. T. Costa, M. Bernardino, A. F. Zorzo, S. d. R. S. Souza, and R. Saad. An empirical comparison of model-based and capture and replay approaches for performance testing. Empirical Software Engineering, 20(6), 2015.
E. M. Rodrigues, R. S. Saad, F. M. Oliveira, L. T. Costa, M. Bernardino, and A. F. Zorzo. Evaluating capture and replay and model-based performance testing tools: An empirical comparison. In Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and MeasurementESEM, 2014.
E. M. Rodrigues, L. D. Viccari, A. F. Zorzo, and I. Gimenes. PLeTs Test automa tion using software product lines and model based testing. In Proceedings of the 22nd International Conference on Software Engineering and Knowledge Engineering, 2010, 2010.
S. Sivanandan and Y. C. B. Agile development cycle: Approach to design an effective model based testing with behaviour driven automation framework. In Proceedings of the 20th Annual International Conference on Advanced Computing and Communications, 2014.
L. Apfelbaum and J. Doyle. Model based testing. In Software Quality Week Conference, 1997.
K. Beck, M. Beedle, A. Van Bennekum, A. Cockburn, W. Cunningham, M. Fowler, J. Grenning, J. Highsmith, A. Hunt, R. Jeffries, et al. Manifesto for agile software development. http://www.agilemanifesto.org, 2001. acessado em 07/03/2017.
M. Bernardino, E. M. Rodrigues, and A. F. Zorzo. Performance testing modeling: an empirical evaluation of DSL and UML-based approaches. In Proceedings of the 31st Annual ACM Symposium on Applied Computing, 2016.
M. Bernardino, A. F. Zorzo, and E. M. Rodrigues. Canopus: A domain-specific language for modeling performance testing. In 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST), 2016.
D. A. Carlson. Designing xml vocabularies with uml (poster session). In Addendum to the 2000 Proceedings of the Conference on Object-oriented Programming, Systems, Languages, and Applications (Addendum), 2000.
T. S. Chow. Testing software design modeled by finite-state machines. IEEE Transactions on Software Engineering, 4(3), 1978.
L. T. Costa, R. M. Czekster, F. M. de Oliveira, E. M. Rodrigues, M. B. da Silveira, and A. F. Zorzo. Generating performance test scripts and scenarios based on abstract intermediate models. In Proceedings of the 24nd International Conference on Software Engineering and Knowledge Engineering, 2010, 2012.
L. Crispin and J. Gregory. Agile testing: A practical guide for testers and agile teams. Pearson Education, 2009.
V. Entin, M. Winder, B. Zhang, and S. Christmann. Combining model-based and capturereplay testing techniques of graphical user interfaces: An industrial approach. In Proceedings of the IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops, 2011.
V. Entin, M. Winder, B. Zhang, and S. Christmann. Introducing model-based testing in an industrial Scrum project. In Proceedings of the 7th International Workshop on Automation of Software Test, 2012.
V. Entin, M. Winder, B. Zhang, and A. Claus. A process to increase the model quality in the context of model-based testing. In Proceedings of the IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2015.
D. Jalalinasab and R. Ramsin. Towards model-based testing patterns for enhancing agile methodologies. In SoMeT, 2012.
M. Katara and A. Kervinen. Making model-based testing more agile: a use case driven approach. In Proceedings of the Haifa Verification Conference, 2006.
B. Kitchenham, O. P. Brereton, D. Budgen, M. Turner, J. Bailey, and S. Linkman. Systematic literature reviews in software engineering–a systematic literature review. Information and software technology, 51(1), 2009.
N. Li, A. Escalona, and T. Kamal. Skyfire: Model-based testing with cucumber. In Proceedings of the IEEE International Conference on Software Testing, Verification and Validation, ICST 2016, 2016.
G. Luo, A. Petrenko, and G. v. Bochmann. Selecting test sequences for partially-specified nondeterministic finite state machines. In Protocol Test Systems. 1995.
E. M. Rodrigues, F. M. de Oliveira, L. T. Costa, M. Bernardino, A. F. Zorzo, S. d. R. S. Souza, and R. Saad. An empirical comparison of model-based and capture and replay approaches for performance testing. Empirical Software Engineering, 20(6), 2015.
E. M. Rodrigues, R. S. Saad, F. M. Oliveira, L. T. Costa, M. Bernardino, and A. F. Zorzo. Evaluating capture and replay and model-based performance testing tools: An empirical comparison. In Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and MeasurementESEM, 2014.
E. M. Rodrigues, L. D. Viccari, A. F. Zorzo, and I. Gimenes. PLeTs Test automa tion using software product lines and model based testing. In Proceedings of the 22nd International Conference on Software Engineering and Knowledge Engineering, 2010, 2010.
S. Sivanandan and Y. C. B. Agile development cycle: Approach to design an effective model based testing with behaviour driven automation framework. In Proceedings of the 20th Annual International Conference on Advanced Computing and Communications, 2014.
Publicado
28/08/2017
Como Citar
ZANIN, Aline; ZORZO, Avelino Francisco; RODRIGUES, Élder de Macedo.
Uma Proposta de Boas Práticas para Aplicação de Teste Baseado em Modelos em Métodos Ágeis. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 16. , 2017, Rio de Janeiro.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2017
.
p. 281-295.
DOI: https://doi.org/10.5753/sbqs.2017.15107.