A Proposal of Good Practices for Model-Based Testing in Agile Methods
Abstract
This paper analyzes how Model-based Testing (MBT) can be applied by teams that use agile methods, more specifically Scrum. Hence, we performed a systematic literature review to identify the works that were published and show the problems related to MBT process when applied in the agile context. Furthermore, we performed also a field research conducted through interviews with professionals who work on software quality in agile teams. Finally, we correlated the opinion of the specialists against the literature review and provide a proposal of better practices for implementing MBT in agile teams. This proposal was validated through a surveyReferences
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.
Published
2017-08-28
How to Cite
ZANIN, Aline; ZORZO, Avelino Francisco; RODRIGUES, Élder de Macedo.
A Proposal of Good Practices for Model-Based Testing in Agile Methods. In: BRAZILIAN SOFTWARE QUALITY SYMPOSIUM (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.
