Model‐based testing of Apache ZooKeeper: Fundamental API usage and watchers. (2nd December 2019)
- Record Type:
- Journal Article
- Title:
- Model‐based testing of Apache ZooKeeper: Fundamental API usage and watchers. (2nd December 2019)
- Main Title:
- Model‐based testing of Apache ZooKeeper: Fundamental API usage and watchers
- Authors:
- Artho, Cyrille
Banzai, Kazuaki
Gros, Quentin
Rousset, Guillaume
Ma, Lei
Kitamura, Takashi
Hagiya, Masami
Tanabe, Yoshinori
Yamamoto, Mitsuharu - Other Names:
- Schieferdecker Ina guestEditor.
Memon Atif guestEditor.
Washizaki Hironori guestEditor. - Abstract:
- Summary: In this paper, we extend work on model‐based testing for Apache ZooKeeper, to handle watchers (triggers) and improve scalability. In a distributed asynchronous shared storage like ZooKeeper, watchers deliver notifications on state changes. They are difficult to test because watcher notifications involve an initial action that sets the watcher, followed by another action that changes the previously seen state. We show how to generate test cases for concurrent client sessions executing against ZooKeeper with the tool Modbat. The tests are verified against an oracle that takes into account all possible timings of network communication. The oracle has to verify that there exists a chain of events that triggers both the initial callback and the subsequent watcher notification. We show in detail how the oracle computes whether watch triggers are correct and how the model was adapted and improved to handle these features. Together with a new search improvement that increases both speed and accuracy, we are able to verify large test setups and confirm several defects with our model. Abstract : This paper shows an extensive model‐based testing case study using tool Modbat on Apache ZooKeeper. We improve the scalability of our model to handle more complex asynchronous and concurrent actions and implement test oracle extensions to handle the complex semantics of watchers, which deliver notifications on stage changes on the server. Our work can successfully verify whether aSummary: In this paper, we extend work on model‐based testing for Apache ZooKeeper, to handle watchers (triggers) and improve scalability. In a distributed asynchronous shared storage like ZooKeeper, watchers deliver notifications on state changes. They are difficult to test because watcher notifications involve an initial action that sets the watcher, followed by another action that changes the previously seen state. We show how to generate test cases for concurrent client sessions executing against ZooKeeper with the tool Modbat. The tests are verified against an oracle that takes into account all possible timings of network communication. The oracle has to verify that there exists a chain of events that triggers both the initial callback and the subsequent watcher notification. We show in detail how the oracle computes whether watch triggers are correct and how the model was adapted and improved to handle these features. Together with a new search improvement that increases both speed and accuracy, we are able to verify large test setups and confirm several defects with our model. Abstract : This paper shows an extensive model‐based testing case study using tool Modbat on Apache ZooKeeper. We improve the scalability of our model to handle more complex asynchronous and concurrent actions and implement test oracle extensions to handle the complex semantics of watchers, which deliver notifications on stage changes on the server. Our work can successfully verify whether a chain of events to trigger a watcher exists in large and complex scenarios. … (more)
- Is Part Of:
- Software testing, verification & reliability. Volume 30:Number 7/8(2020)
- Journal:
- Software testing, verification & reliability
- Issue:
- Volume 30:Number 7/8(2020)
- Issue Display:
- Volume 30, Issue 7/8 (2020)
- Year:
- 2020
- Volume:
- 30
- Issue:
- 7/8
- Issue Sort Value:
- 2020-0030-NaN-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2019-12-02
- Subjects:
- Apache ZooKeeper -- asynchronous systems -- concurrency -- model‐based testing -- networked systems -- trigger
Computer software -- Testing -- Periodicals
Computer software -- Verification -- Periodicals
Computer software -- Reliability -- Periodicals
005.14 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/stvr.1720 ↗
- Languages:
- English
- ISSNs:
- 0960-0833
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 8321.457500
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 15372.xml