Rubies & Acceptance Testers: For those of you not doing acceptance tests yet, I have a very slick test rig to show off. I haven''t demo-ized it yet, so please accept these diverse audiovisual displays as if they were a united whole! We start with MiniRubyWiki, at this demo: http://www.zeroplayer.com/cgi-bin/wiki?TestFlea Click on any of the green bars. Now imagine if the left graphic were a thumbnail of a screenshot of a web page. You could click on the thumbnail and get the complete screenshot. This would be a copy of the tested website, in its tested state, with its intermediate data. To drive that test, in the right panel I put RSpec and Watir. So the code to log into a website would look like this: input_text ''login'', ''quentin'' input_text ''password'', ''test'' click_button ''commit'' @browser.should_contain(''Logged in successfully'') @browser.should_contain(''greetings quentin'') The point of RSpec is syntactic sugar, and I have not yet learned how much sweeter I can make that. So far, I have learned how to use it to make well-formed English sentences (modulo all the _() delimiter crap!). Writing acceptance tests with this system is just plain fun. Click one of the quill icons next to the green bars. Before or after I write a new feature, I find a similar test and clone it. (Cloning a test is a best-practice in Acceptance Test land, so long as you frequently merge things back into features!) Then I edit the new test to advance its behavior. The test cases all go into an XML file (_not_ a Wiki file!). At test time, Wiki calls a test runner to run one case in that file. The test runner without arguments runs all the cases in all the relevant XML files. It stitches together the RSpec environment, tests all the cases, and then changes each case''s result_color to reflect its passing state. What feature should I add next? -- Phlip http://www.greencheese.us/ZeekLand <-- NOT a blog!!!