[comp.sys.mac.programmer] Virtual User - Anyone using?

Bill.Maginnis@f15.n300.z1.fidonet.org (Bill Maginnis) (06/24/91)

I'm looking for any information on a developer tool which Apple 
officially distributes via APDA.  I'm looking for any feedback
on VIRTUAL USER. Virtual User (or VU) is a testing tool which allows
the developer, or technical user involved with the development
process, to automate the testing of an application via preplanned
scripts.
  VU is still a beta-application, but I have spoken with the support
person of VU within Apple and have been assured that it is stable
product and is in use constantly for testing within their Third
Part Test Lab in Cupertino.
  Any developers out there using Virtual User?  What are your
comments on this tool?  Has it helped in your development testing?
How difficult do you think it would be for someone with some 
programming background/experience to get up to speed on it?  Do you
find that it has helped with your testing cycle in conjunction with
beta testers? or are beta testers alone sufficient?
  Thanks for you interest in exploring this topic.  I'd appreciate
any and all feedback.  Thanks again...
--Bill


 

--  
Uucp: ...{gatech,ames,rutgers}!ncar!asuvax!stjhmc!300!15!Bill.Maginnis
Internet: Bill.Maginnis@f15.n300.z1.fidonet.org

smoke@well.sf.ca.us (Nicholas Jackiw) (06/27/91)

In article <14746.2864EF6B@stjhmc.fidonet.org> Bill.Maginnis@f15.n300.z1.fidonet.org (Bill Maginnis) writes:
>I'm looking for any information on a developer tool which Apple 
>officially distributes via APDA.  I'm looking for any feedback
>on VIRTUAL USER. 
>  Any developers out there using Virtual User?  What are your
>comments on this tool?  Has it helped in your development testing?
>How difficult do you think it would be for someone with some 
>programming background/experience to get up to speed on it?  

I've used VU enough to comment, though not enough to give you
an in-depth evaluation.  The testing paradigm involves creating
sets of tasks for your application to execute, and then letting
VU act as the user in carrying them out.  The tasks are specified
in a high-level scripting language which is both easy to learn
and relatively powerful (a far cry beyond Macromaker or Monkey;
you have full conditionals and standard programming-language
control structures).  

Nevertheless, I think that unless you have multiple versions of
a program that you need to test (and guarantee identical performance
from), or if *both* your program plays down-and-dirty enough that
you need to test on a wide variety of platforms *and* you have
access to this wide variety of platforms, that you may find VU
too cumbersome.  If either of these preconditions is true, then
you should really look into it--I often run test scripts across
an Appletalk network,  performing exactly the same tasks on a IIfx
running in 24-bit color, an LC under 7.0, and a lowly SE grinding
away under 6.0.2.  In this situation, I love the fact that I don't
have to perform these individual tests thrice (and of course, omit
the crucial one on the critical platform at the very last moment
because I'm just too bored).  

If you don't have this much hardware laying around, it may well
take you much longer to design VU scripts than it would to execute
your entire test battery several times "by hand."  While the 
scripting language does provide *some* higher level data abstractions,
such as "Click the button named 'Cancel,'" certain tasks--which may
be vital in your application--are very difficult to phrase in it.
My application is primarily a graphics draw-type program,  and VU
has no way of abstracting these graphics into objects.  So I'm
either stuck coding scripts that test the program under absolute
mouse coordinates,  or writing scripts that essentially duplicate
all the logic (and therefore, all the bugs) that my original app
contains to effect the illusion that these pixels represent graphic
objects, with some semantic identity beyond their current location
on the screen.

Someone I know gets hired often for contract testing by Apple and several
largish Mac software houses.  For her, VU is indispensable.  I spend
half my time writing my application, half my time doing phone support,
(half my time reading news, half my time sipping coffee, etc.), and
have yet to be convinced that the rewards of VU, for me, outweigh
the task of mastering its language and defining a rigorous set of
test scripts for my app.



-- 
                              --- * ---
Nick Jackiw                  Smoke@well.sf.ca.us   | Jackiw@cs.swarthmore.edu
Key Curriculum Press, Inc.   Applelink:KEY.EDUSOFT | (415) 548-2304
                              --- * ---