philippec/Pixen — Issue #146: Pixen Needs Tests (I think)
Author: casey
Created: 2012-02-11 05:16:19+00:00
State: open

I first downloaded Pixen several years ago. I was immediately impressed by the intuitive native interface, and thought that I had found the perfect pixel art editor. However, after a few crashes that caused me to lose work, I abandoned it.

This happened at least 3 more times. After a year or so, I would try it again, hoping that it had become stable enough, but stability issues or strange bugs forced me to give up on it yet again. The most recent time this occurred was a few days ago. I was 90% of the way through creating a small piece of pixel art, when a bug caused me to lose a bunch of work.

I think that Pixen is *almost* a fabulous tool, but any tool which manipulates data is unusable if there is any chance of irrecoverable corruption. In order for Pixen to reach it's potential, the overal stability of the program needs to be rocks solid.

Fortunately, I think this is a very achievable goal. I think that almost all of Pixen's complex functionality is extremely testable, and that comprehensive tests will both help the project reach stability, as well as keep that stability as time goes on, no small feat with an open source project with loosely coordinated contributors.

Please correct me if I'm wrong, but I can imagine straightforward tests for all of the following: image transformations, individual tool effects, undo-redo, image sequences, layers, importing and exporting between formats, and general file handling, basically all complex functionality not involving the UI.

Also, since some crashes are inevitable, I would suggest adding a feature to create temporary files that containing the current state of the image, in case the app crashes.

I don't have enough time to be a core developer, but if you could integrate a testing framework (I looks like a few frameworks exist: http://stackoverflow.com/questions/33207) and write a few example tests, I would love to take a look and see if I couldn't contribute a few more.

I hope that this doesn't sound to negative. I really, really want Pixen to become a tool that I use day in, and day out, and that is reliable to a fault, and I think it's close to getting there.