From: John Roth Date: 2001-12-21T22:31:42+09:00 Subject: [ruby-talk:29218] Re: test-first "Keith Ray" wrote in message news:k1e2i3t4h5r6a7y-39A637.20094420122001@netnews.attbi.com... > In article , > "John Roth" wrote: > > > "Vladimir" wrote in message > > news:4837660.0112170549.227501a6@posting.google.com... > > > "John Roth" wrote in message > > news:... > > > > > > > The thing is, if you can write a program that launches another > > program, > > > > takes over the mouse and keyboard (and game device, etc.), and > > > > can take a screen shot periodically, then it can analyze the > > contents of > > > > the screen shot(s) and determine whether what it expected actually > > > > happened. This would be a lot easier for a standard dialog box > > > > application than a game, but the principle is the same. > > > > > > Having some test automation experience I wouldn't recommend anybody > > > doing that. Far better to rewrite whole application to get it > > > auto-testable or even better just sit down and test it manually. > > > > The point I was trying to make (which seems to be universal experiance,) > > is that current GUI testing tools lack a lot. It should be possible to > > make > > a better one (Preferably free.) Unfortunately, that's going to take a > > bit of > > thinking. Also a reasonable amount of pattern recognition graphics > > processing. > > I've never taken the time to learn to use Virtual User, but Apple has > been using it for a decade... > > VU is typical of the class of GUI test tools which look at and manipulate the underlying mechanisms of the window manager and associated components. It doesn't look at the screen at all, so it can't go that last step and check look and feel. TK (when running under X-Windows) has a similar functionality built in. The approach is inherently limited to a specific GUI and possibly operating system. It also requires learning a new language, and requires "looking under the hood" for the names used to implement the widgets. This makes it incredibly fragile: if you decide to change the name of a widget to improve clarity, you've just blown a large number of the separate QA department's scripts! My point, which I suppose some day someone will understand, is that a GUI testing tool should look at what's on the screen, and run tests against it. All current testing tools that I know of avoid doing this, either totally or in any coherent fashion. Also, testing tools at that level should have a good deal of tester defined AI capabilities. John Roth