Steve on Image Processing with MATLAB

Image processing concepts, algorithms, and MATLAB


Steve on Image Processing with MATLAB has been archived and will not be updated.

Parameterized software tests and DIPUM examples

Testing DIPUM examples

The book Digital Image Processing Using MATLAB (DIPUM) contains 144 examples. I know this because I watch them all run in MATLAB at least a couple of times a year. I find watching all the images come and go during this process to be oddly entrancing.

I have used the MATLAB unit test framework to write automated tests that run every example script from the book to see whether each runs without error and without generating unexpected warning messages. I do this roughly twice a year to test the DIPUM examples against the next MATLAB and Image Processing Toolbox release that we are getting ready to ship. A couple of weeks ago I ran this using the latest development build of the upcoming R2014b release.

Note for those interested in advanced unit testing techniques: I have recently modified these tests to use the parameterized test feature introduced in R2014a. Parameterized tests make it easy to create a large set of mostly repetitive test cases that vary over a certain parameter space. Using this feature, I've written code that turns every example script in a specified folder into a separate test case that automatically executes the script and checks for errors and warnings. If you are interested in this unit testing capability, you might start with the documentation section called "Create Basic Parameterized Test."

I said above that I like to watch the images come and go. So I made a video of it for you. (I didn't want the video file to be huge, so I only captured a small portion of the screen.)

The video is just under 3 minutes long, and it's a complete waste of time. Enjoy.

  • print


To leave a comment, please click here to sign in to your MathWorks Account or create a new one.