Property-Based Testing for Visualization Development

At a glance

  • Uses property-based testing to explore large spaces of visualization parameters automatically.
  • Checks expected relationships between renderings produced under paired parameter settings.
  • Integrates with Inviwo’s regression-testing pipeline for continuous integration.
Publication
The Gap between Visualization Research and Visualization Software (VisGap)

Motivation

Visualization software can expose many rendering parameters, while conventional regression tests usually cover only a small set of hand-picked configurations. Bugs may therefore remain hidden until a particular combination of values is encountered.

Method

The work applies property-based testing to visualization development. It generates many parameter settings automatically, renders paired configurations, and checks whether the expected visual effect of a controlled parameter change is present. These properties can be defined alongside an algorithm, making the approach compatible with test-driven development.

Evaluation

The approach is integrated into Inviwo’s regression-testing infrastructure and exercised through visualization use cases. The examples show how automatically generated parameter combinations can expose errors that are unlikely to be covered by fixed image baselines alone.

Limitations

A property-based test is only as useful as the property it encodes. Designing robust visual assertions and diagnosing a failed generated case still require developer insight, especially when rendering differences are subtle or data-dependent.

Dominik Engel
Dominik Engel
Deep Learning Researcher