skip to main content
10.1145/3297663.3309674acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
short-paper

Behavior-driven Load Testing Using Contextual Knowledge - Approach and Experiences

Published: 04 April 2019 Publication History

Abstract

Load testing is widely considered a meaningful technique for performance quality assurance. However, empirical studies reveal that in practice, load testing is not applied systematically, due to the sound expert knowledge required to specify, implement, and execute load tests.
Our Behavior-driven Load Testing (BDLT) approach eases load test specification and execution for users with no or little expert knowledge. It allows a user to describe a load test in a template-based natural language and to rely on an automated framework to execute the test. Utilizing the system's contextual knowledge such as workload-influencing events, the framework automatically determines the workload and test configuration. We investigated the applicability of our approach in an industrial case study, where we were able to express four load test concerns using BDLT and received positive feedback from our industrial partner. They understood the BDLT definitions well and proposed further applications, such as the usage for software quality acceptance criteria.

References

[1]
Varsha Apte, T V S Viswanath, Devidas Gawali, Akhilesh Kommireddy, and Anshul Gupta. 2017. AutoPerf: Automated load testing and resource usage profiling of multi-tier internet applications. In Proc. ICPE 2017. 115--126.
[2]
Alberto Avritzer, Vincenzo Ferme, Andrea Janes, Barbara Russo, Henning Schulz, and André van Hoorn. 2018. A Quantitative Approach for the Assessment of Microservice Architecture Deployment Alternatives by Automated Performance Testing. In Proc. ECSA 2018. 159--174.
[3]
Maicon Bernardino, Avelino F Zorzo, and Elder M Rodrigues. 2014. Canopus: A Domain-Specific Language for Modeling Performance Testing. In Proc. ICSEA 2014. 157--167.
[4]
Cor-Paul Bezemer, Simon Eismann, Vincenzo Ferme, Johannes Grohmann, Robert Heinrich, Pooyan Jamshidi, Weiyi Shang, André van Hoorn, Monica Villavicencio, Jürgen Walter, and Felix Willnecker. 2018. How is Performance Addressed in DevOps? A Survey on Industrial Practices. In Proc. ICPE 2019 .
[5]
Yuhong Cai, John C. Grundy, and John G. Hosking. 2007. Synthesizing Client Load Models for Performance Engineering via Web Crawling. In Proc. ASE 2007. 353--362.
[6]
Maria Carla Calzarossa, Luisa Massari, and Daniele Tessera. 2016. Workload Characterization: A Survey Revisited. Comput. Surveys, Vol. 48, 3 (2016), 48:1--48:43.
[7]
Vincenzo Ferme and Cesare Pautasso. 2017. Towards Holistic Continuous Software Performance Assessment. In Proc. QUDOS@ICPE 2017. 159--164.
[8]
Vincenzo Ferme and Cesare Pautasso. 2018. A Declarative Approach for Performance Tests Execution in Continuous Software Development Environments. In Proc. ICPE 2018. 261--272.
[9]
Nikolas Roman Herbst, Nikolaus Huber, Samuel Kounev, and Erich Amrehn. 2013. Self-Adaptive Workload Classification and Forecasting for Proactive Resource Provisioning. In Proc. ICPE 2013. 187--198.
[10]
Zhen Ming Jiang and Ahmed E Hassan. 2015. A Survey on Load Testing of Large-Scale Software Systems. IEEE Trans. Soft. Eng., Vol. 41, 11 (2015), 1091--1118.
[11]
Tobias Kuhn. 2014. A survey and classification of controlled natural languages. Computational Linguistics, Vol. 40, 1 (2014), 121--170.
[12]
Abderrahman Matoussi and Régine Laleau. 2008. A Survey of Non-Functional Requirements in Software Development Process. Research Report TR-LACL-2008-7. LACL.
[13]
Daniel A. Menascé and Virgilio A. F. Almeida. 2002. Capacity Planning for Web Services: Metrics, Models and Methods 1st ed.). Prentice Hall, Upper Saddle River, NJ, USA.
[14]
Dan North. 2006. Introducing BDD. https://dannorth.net/introducing-bdd/. (2006).
[15]
Duvsan Okanoviç, André van Hoorn, Christoph Zorn, Fabian Beck, Vincenzo Ferme, and Jürgen Walter. 2019. Concern-driven Reporting of Software Performance Analysis Results. In Proc. ICPE 2019.
[16]
Henning Schulz, Tobias Angerstein, and André van Hoorn. 2018. Towards Automating Representative Load Testing in Continuous Software Engineering. In Proc. ICPE 2018. 123--126.
[17]
Henning Schulz, Dusan Okanović, André van Hoorn, Vincenzo Ferme, and Cesare Pautasso. 2019. Behavior-driven Load Testing Using Contextual Knowledge-Approach and Experiences. (Feb. 2019).
[18]
Ken Schwaber and Mike Beedle. 2001. Agile Software Development with Scrum. Prentice Hall PTR.
[19]
Mahnaz Shams, Diwakar Krishnamurthy, and Behrouz Homayoun Far. 2006. A Model-Based Approach for Testing the Performance of Web Applications. In Proc. SOQUA 2006. 54--61.
[20]
Christian Vögele, André van Hoorn, Eike Schulz, Wilhelm Hasselbring, and Helmut Krcmar. 2018. WESSBAS: Extraction of Probabilistic Workload Specifications for Load Testing and Performance Prediction -- a Model-Driven Approach for Session-Based Application Systems. Software and System Modeling, Vol. 17, 2 (2018), 443--477.
[21]
Jürgen Walter, André van Hoorn, Heiko Koziolek, Dusan Okanovic, and Samuel Kounev. 2016. Asking "What"?, Automating the "How"? - The Vision of Declarative Performance Engineering. In Proc. ICPE 2016. 91--94.
[22]
Yang Wang and Stefan Wagner. 2018. Combining STPA and BDD for Safety Analysis and Verification in Agile Development: A Controlled Experiment. In Proc. XP 2018. 37--53.
[23]
Matt Wynne, Aslak Hellesoy, and Steve Tooke. 2017. The Cucumber Book: Behaviour-Driven Development for Testers and Developers. O'Reilly UK Ltd.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPE '19: Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering
April 2019
348 pages
ISBN:9781450362399
DOI:10.1145/3297663
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 April 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. behavior-driven testing
  2. declarative performance engineering
  3. load testing

Qualifiers

  • Short-paper

Funding Sources

Conference

ICPE '19

Acceptance Rates

ICPE '19 Paper Acceptance Rate 13 of 71 submissions, 18%;
Overall Acceptance Rate 252 of 851 submissions, 30%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)3
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media