Strobl22

Applied Harmonic Analysis and Friends

June 19th - 25th 2022

Strobl, AUSTRIA

"Software testing in the Large Time Frequency Analysis Toolbox"

Hollomey, Clara

The Large Time Frequency Toolbox (LTFAT) is a freely available Matlab/GNU Octave toolbox for time-frequency analysis, in particular for the computation of Fourier, Gabor, and wavelet transforms, filter banks and frames. The maintenance of such software comprises the application of changes to improve upon the readability, maintainability, functionality, and performance of the code. However, the larger the code base, the more challenging is the manual tracking of those changes' side-effects, and finding a strategic approach to testing the correct functioning of the code becomes desirable. Modern software engineering provides a wealth of testing concepts, but their adaptation to the scientific context is not always straightforward. With software usually being a byproduct of the research, rather than an aim in itself, the resources for testing code are often limited, and the unaltered application of common testing paradigms may not be practical. I will describe LTFAT's testing strategy which relies on unit, end-to-end, reference based, and property based tests, highlighting the benefits and drawbacks of these approaches with regards to common testing scenarios in the computation of time-frequency representations. I will outline how the automated verification of computational properties and formulas are used to enhance the testing process. Finally, I will present the TTEST toolbox, a collection of testing utilities for Matlab and GNU Octave that specifically aims at supporting and simplifying the testing of scientific software. TTEST is joint work with Thomas Mejstrik.

« back