McMahon has asked for the wisdom of the Perl Monks concerning the following question:
In this node, dragonchild explains how he's going to build a text-based adventure game in several languages, and wonders how to test his code.
pbeckingham recommends testing at the user interface with Expect.
adrianh recommends writing a common api for each implementation and script the testing through the API.
andyf adds a recommendation to write a state-dumping function.
sgifford recommends controlling the testing with a 2-way pipe in and out of the game.
BrowserUK suggests a simple but multidisciplinary approach with a simple script recorder controlled through Test::More.
That is already a lot of interfaces to test a simple command-line program, and we didn't even hear from the Haskell program-by-contract camp (who talk about testable interfaces a lot) or the FIT alternate-UI camp (who are trying to figure out how to do agile user testing).
So:
Is there a best way to build an interface for testing?
Are there contexts in which one test interface is better than another?
pbeckingham recommends testing at the user interface with Expect.
adrianh recommends writing a common api for each implementation and script the testing through the API.
andyf adds a recommendation to write a state-dumping function.
sgifford recommends controlling the testing with a 2-way pipe in and out of the game.
BrowserUK suggests a simple but multidisciplinary approach with a simple script recorder controlled through Test::More.
That is already a lot of interfaces to test a simple command-line program, and we didn't even hear from the Haskell program-by-contract camp (who talk about testable interfaces a lot) or the FIT alternate-UI camp (who are trying to figure out how to do agile user testing).
So:
Is there a best way to build an interface for testing?
Are there contexts in which one test interface is better than another?
Back to
Seekers of Perl Wisdom