Capsule 6

TSGame

General Information about the Capsule

Name: TSGame
Identifier: ENACTEST_ID_6
Language: English
Category: Serious Game AND Environment
Keywords: Software Testing, JUnit, Unit Test, Test quality, Test Smells.

Explore

Description: The presence of test smells related to low-quality test cases is a known factor contributing to problems in maintaining both test suites and production code. The TSGame (Test Smell Game) capsule provides a serious game where students can familiarize with test smells by practicing with their detection and removal from JUnit test code. TSGame has been implemented as a Web-based application that allows a teacher to assign students test smell detection and refactoring tasks that they have to accomplish in game sessions. Upon completion of the tasks they have the possibility to gain rewards.

Cost: Free
Copyright and Other Restrictions: Yes
Description: Licensed for educational and research purposes.

Educational

Interactivity Type: Interactive
Learning Resource Type: Teaching material with accompanying software
Interactivity Level: Medium
Intended End-User Role: Learner (Master’s students , final year Bachelor’s students)

Context: Higher Education
Typical Age Range: Adult learners (18+ years)
Difficulty Level: Intermediate
Description of Learning Objectives:

  • Learning how to generate tests from UML state machines
  • Coverage criteria
  • Mutation testing

Prerequisites

  • Prior knowledge of UML class diagrams and state charts.
  • When using own models: Prior knowledge of testing basics

Classification of the Learning Objectives According to Bloom’s Taxonomy

  • Understand: Comprehend JUnit, Unit Testing, UML state machines, Test generation, and model coverage.
  • Apply: N+ strategy for test generation and use mutation testing for evaluating tests.
  • Analyze: Compare manual unit tests with generated tests.
  • Evaluate: Assess test effectiveness of test cases.

Learning Sequence
Introduction to testing, testing framework and JUnit
Activity 1: Testing a Three Plater Volley Game in JUnit – with submissions
State Model, Coverage, N+ strategy, Code instrumentation, test generation
Activity2: Review generated tests
Evaluate generated tests with Mutation in comparison with manual tests

Expected Consequences
Students will develop skills in model-based testing.

Meta-Metadata

Metadata Schema: IEEE LOM-based ARIADNE
Language: English