paint-brush
IntelliGame in Action: Gamifying JavaScript Unit Tests - Background and Related Workby@gamifications
132 reads

IntelliGame in Action: Gamifying JavaScript Unit Tests - Background and Related Work

tldt arrow

Too Long; Didn't Read

Gamification involves creating a playful environment in which users can accomplish their daily tasks. Software testing has been successfully gamified in particular in the context of education. The gamified platform incorporates mechanics and dynamics that integrate social interaction, creativity, and competition. This paper is available on arxiv(https://arxiv.org/abs/2403.03565) under CC-SA 4.0 DEED license.
featured image - IntelliGame in Action: Gamifying JavaScript Unit Tests - Background and Related Work
Gamifications FTW Publications HackerNoon profile picture

Authors:

(1) Philipp Straubinger, University of Passau, Passau, Germany and this author contributed equally to this research;

(2) Tommaso Fulcini, Politecnico di Torino, Torino, Italy and this author contributed equally to this research;

(3) Gordon Fraser, University of Passau, Passau, Germany;

(4) Marco Torchiano, Politecnico di Torino, Torino, Italy.

Abstract and Introduction

Background and Related Work

Implementation

Experiment

Results

Conclusions, Acknowledgement, and References

Compared to writing code, testing is often viewed as less rewarding by software developers, requiring significant effort without always resulting in due recognition from management [7]. To address issues related to motivation and acknowledgment of testers’ contributions, various solutions have been proposed, encompassing both extrinsic and intrinsic motivators. Gamification, a rising trend in this domain, has experienced substantial growth over the past decade [3], even leading to dedicated conferences in the academic sector.


Defined as the use of game elements in a non-playful context by Deterding et al. [2], gamification involves creating a playful environment in which users can accomplish their daily tasks. Completing daily goals within such an environment allows users to benefit from the motivators associated with the designed game elements, making the underlying activity more engaging and satisfying.


Software testing has been successfully gamified in particular in the context of education. For example, Code Defenders [5] is a gamified application to teach mutation testing concepts in an academic setting, where students assume either of two roles: attackers or defenders. Users from both sides engage in a mutual challenge on a shared Java class, applying mutation testing. The attackers’ goal is to create code mutants (variants of the class with the same functionality), while the defenders’ objective is to enhance the existing test suite with new test cases to detect the code mutants. The gamified platform incorporates mechanics and dynamics that integrate social interaction, creativity, and competition.


Gamification has also been applied in a practical rather than educational context. For example, Coppola et al. [1] propose a framework to gamify exploratory GUI testing using a Capture and Replay tool for web applications. The gamification layer introduces common game elements such as scores and leaderboards, as well as novel elements not previously explored in the literature, including dynamic visual bug injection with related visual feedback and scores, along with a progress bar tracking the tester’s exploration, i.e., the achieved widget coverage of a specific web page.


As indicated in a recent survey on gamified software testing [3], current trends in the literature show that unit testing is the most targeted level, with the most focused testing phase being test creation and execution. Popular techniques considered by researchers and practitioners include Mutation, Black Box, and White Box testing. While IntelliGame initially emerged as a unit test tool, its achievement-based structure allows for extensibility across various testing dimensions, introducing achievements specific to each.


This paper is available on arxiv under CC BY-SA 4.0 DEED license.