Regression test utility suggestions?

I am seeking suggestions for a regression test utility or framework to use while developing in Haskell (in a MS Windows environment). I am developing a Haskell application that parses an input text file, and outputs some information about what was parsed. The application is currently in a GUI, but the parsing/analysis code does not require any user interaction, so it would be simple to implement a command-line based version (that could be invoked by a regression test utility -- http://en.wikipedia.org/wiki/Regression_testing), that takes as args: the input and output file pathnames. As I develop, I have a growing set of input files that are used to test various aspects of the grammar. I am seeking a regression test utility that I could point at a dir of test input files, and it would process each input file using my app, creating a corresponding output file. The utility would then compare each output file with a known good output file, and let me somehow review the results (i.e., the differences), and for each test file (or all of them) allow me to decide one of: -- there were no diffs; all is well -- the diff shows the output changed as I expected, due to coding enhancements or fixes; take the new output file and use it as the new good output file -- oops, unexpected diffs; I need to fix my code and then re-run the utility afterwards I have reviewed http://www.haskell.org/haskellwiki/Introduction_to_QuickCheck and http://hackage.haskell.org/packages/archive/pkg-list.html#cat:testing but I did not see anything that seems to fit. I'm not sure whether (or how) QuickCheck would lend itself to this type of testing. I don't want to generate any test cases; I have a manually created collection of test cases that I want to use (which is all I am interested in, at this point). In the past I have coded something like this using shell or Perl scripts, etc. I am wondering if there is a commonly used utility available for this purpose that you like. (I use a MS Windows environment, but I have a Bash and various gnu shell utils installed.) (It does not matter to me whether it is written in Haskell, although I suppose that would make it more enjoyable to hack on. :) Thanks in advance very much for any suggestions. -- Peter

2010/10/21 Peter Schmitz
I am seeking suggestions for a regression test utility or framework to use while developing in Haskell (in a MS Windows environment). [snip]
Hi, Have a look at HUnit and, e.g. test-framework. http://hackage.haskell.org/package/HUnit http://hackage.haskell.org/package/test-framework You would have to write some code to read the input and expected output from files. Cheers, Thu

On 22 October 2010 08:38, Peter Schmitz
I am seeking suggestions for a regression test utility or framework to use while developing in Haskell (in a MS Windows environment). [snip]
For this kind of task I use shelltestrunner http://hackage.haskell.org/package/shelltestrunner It can do recursive search through directories to find test cases, which I find particularly handy. Cheers, Bernie.
participants (3)
-
Bernie Pope
-
Peter Schmitz
-
Vo Minh Thu