Cine has asked for the wisdom of the Perl Monks concerning the following question:

I have a (non-perl) program that runs with a graphical user-interface.
I would really like to test the speed of this program on a more regular basis and prefeable completly automaticly.

Speed test is a large and complex area, but what I want to test in this situation is a number of different sequences of user actions, both based on the user push a button at a specific time and pushing another button after the program has finished a request.
The latter is somewhat a problem since I have no idea on how to figure when a request is done, since it is also a demand that the (non-perl) program is NOT altered to fit into this test.

Can anyone help with how this could be done, which modules I should look into etc.

PS.
I have my (non-perl) program in both a win32 and X version, so the perlprogram needs to be nonplatform specifik.

T I M T O W T D I

Replies are listed 'Best First'.
Re: Speed test of graphical UI
by kschwab (Vicar) on Aug 25, 2001 at 20:18 UTC
    I'm not sure you'll have much luck finding a free gui test solution that works across the win32 gui and X11. Here's a few that are platform specific:

    Win32

    X11
    • Android - done in *cough* tcl/tk
    • xremote - not integrated with any scripting language, but it can record/playback actions
    There's a pretty good summary listing of GUI test tools here (some free/some not).
Re: Speed test of graphical UI
by Cine (Friar) on Aug 25, 2001 at 19:48 UTC
    Just to elaborate on the speed issue...

    The problem is NOT in measuring time, but rather how do you fake a user running this program? and then measuring the time it took ;)

    T I M T O W T D I
      H Cine,

      I can only answer this question from a Win32 perspective, I'm still a linux newbie. But I think that Win32::SetupSup will help you in Windows. I think it's on CPAN - I can't connect at the moment.

      IIRC, Win32::SetupSup lets you interact with the GUI (faking a user) so all you'd need to do is subtract the finish time from the start time. I am not sure if Win32::SetupSup would help you detereming IF the process has finished, I suppose it depends on the GUI app in question.

      $code or die

      Error: Keyboard not attached. Press F1 to continue.

      Update: hmm.Opera won't connect to CPAN search or Kobe's CPAN search but Netscape does. Anyone else have this problem?