Loading ...
Sorry, an error occurred while loading the content.

User interface

Expand Messages
  • Ali Tüzünkan
    Hi all, Should User Interface tests be automated? If so, which software can I use? I believe it is so diffucult to make it automated. Ali [Non-text portions of
    Message 1 of 3 , Feb 5, 2003
    • 0 Attachment
      Hi all,

      Should User Interface tests be automated? If so, which software can I
      use? I believe it is so diffucult to make it automated.

      Ali




      [Non-text portions of this message have been removed]
    • Phlip
      ... Try this list of resources: http://www.c2.com/cgi/wiki?TestFirstUserInterfaces If the GUI toolkit were just another library , you would not think to ask
      Message 2 of 3 , Feb 6, 2003
      • 0 Attachment
        Ali Tüzünkan sez:

        > Should User Interface tests be automated? If so, which software can I
        > use?

        Try this list of resources:

        http://www.c2.com/cgi/wiki?TestFirstUserInterfaces

        If the GUI toolkit were "just another library", you would not think to ask if
        you should test-first it.

        However...

        | n
        | n
        ^ | n
        | | ttt n
        e | t t n
        f | t t nn
        f | t t nn
        o | t t nn
        r | t t
        t | t n tt
        | t nn tttttttttttttt
        | tnnnnnnn
        +------------------------------
        time ->

        ...the 't' line is a test-first GUI project. The 'n' line is a test-last or
        no-test project.

        The 'n' line starts easy (when you are still using the form painters and the
        Wizards). But then, as you run out of wiggle room to refactor without causing
        bugs, that line starts trending up.

        Everyone is familiar with code bases thrown away after a couple years because
        they got too hard to maintain.

        The 't' line, however, starts very hard. The GUI toolkit (and its help systems
        and cultures) wants to raise a window and let you click on it. It does not
        want to run in the background, or be treated as "just another library".

        You must spend a significant upfront investment in learning how to drive the
        GUI, almost like a user, but from within the code. And hopefully without
        letting the window appear on the screen.

        (Much of this effort will, naturally, fall to pushing much logic out of the
        GUI and into a "Representation layer" with no direct GUI access.)

        However, once "just another library" is achieved, plenty of GUI development
        will occur >without< displaying the window and looking at it. Do that before
        integration, of course, but during the TestDrivenDevelopment cycle you
        frequently won't need to.

        > I believe it is so diffucult to make it automated.

        Be careful what you believe when you are inside a feedback loop.

        --
        Phlip
        http://www.greencheese.org/SkeletonCrew
        -- "In my experience, the customer doesn't know what he wants
        until you don't give it to him." --David Brady --
      • Alex Chaffee / Purple Technology
        FYI, my open source application XPath Explorer does some unit testing on the GUI. See
        Message 3 of 3 , Feb 6, 2003
        • 0 Attachment
          FYI, my open source application XPath Explorer does some unit testing
          on the GUI.

          See

          http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xpe/xpe/src/xpe/gui/XPEPanelTest.java?rev=HEAD&content-type=text/vnd.viewcvs-markup

          Note that I'm not testing the widgets per se; I'm testing that if I
          set this text here, and click this thing here, then this other thing
          now contains this other text...

          Note that if I were to do this today, I think I'd structure things
          differently, but hopefully this gives you some pointers.


          --
          Alex Chaffee mailto:alex@...
          Purple Technology - Code and Consulting http://www.purpletech.com/
          jGuru - Java News and FAQs http://www.jguru.com/alex/
          Gamelan - the Original Java site http://www.gamelan.com/
          Stinky - Art and Angst http://www.stinky.com/
        Your message has been successfully submitted and would be delivered to recipients shortly.