Carleton University - School of Computer Science Honours Project
Winter 2018
Testing Fluxx
Sophia Brandt
SCS Honours Project Image
ABSTRACT
Games are created so that the rules are carefully described, and they are expected to be followed throughout the game. What happens when the basis of the rules is that the rules are always changing? This is the premise for the card game Fluxx. The goal was to determine whether or not the ever-changing rules affected the approach that was taken to test the program. I created a fully distributed version of Fluxx in Java, with a real-time graphical user interface. To achieve this, a custom communication language, based on the JSON format, was built to exchange data between the server and clients. The test suite consisted of a set of unit tests, and user acceptance tests that were derived from use cases, user stories and a use case diagram. The same approach to testing could be taken to create tests for Fluxx. Since there are many possibilities to how cards can affect the structure of Fluxx, there needed to be more consideration in testing for edge cases. Use cases also required multiple alternate flows because of the numerous possible execution paths.