SPONSORS:






User Tag List

Results 1 to 6 of 6
  1. #1
    Member
    Join Date
    Mar 2002
    Location
    El Segundo, CA, USA
    Posts
    37
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Something from Segue Past

    Many many moons ago, Segue use to have an add-on application (I think it was called 'Go') that given a set of declarations for an application, 'Go' would run through all of the windows and check for things like consistency / hotkeys / etc. Does anyone know if this functionality still exists somewhere in SilkTest or another Segue product?

    Also does anyone know if there is a dynamic way to given a Window declaration, get a list of the controls / objects (i.e. a function call) that are part of that Window.

    ------------------

  2. #2
    Senior Member
    Join Date
    Feb 2000
    Posts
    1,497
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Something from Segue Past

    'Go' might've been the name for it; it seems familiar. Prior to that was some smoke-test-like source code that was available free. They were neat ideas but...

    The problem with the approach is that it isn't practical for anything but the simplest application to supply only a Mainwin declaration and have Silk code tromp around as if it were running an adventure game. The idea of opening doors, inventorying the contents of each room and leaving a trail of bread-crumbs to keep from getting lost is seductive. (Hey, I always thought that if we could make testing a game, it'd be a lot more fun.)

    What stops the approach from being effective is the existence of selection-dependent dialogs and the prerequisite actions and knowledge that they imply. A simple case: Consider any feature that supports add, modify, and delete. The operations modify and delete both depend in part on at least one successfully completed add. If an add hasn't been manually pre-configured the modify and delete buttons might remain disabled and the search algorithm would ignore them.

    Even if the add was completed ahead of time though, the algoritm would still not know how to make the necessary selection prior to pressing a delete or modify button. A login dialog is another example. If the seek-and-inventory code doesn't know how to login - and without help, it can't - it won't even get past the castle's moat. As you can see, it doesn't take very many conditional requirements to render a substantial portion of the application inaccessible.

    This doesn't mean that this activity can't be done however, but doing it requires a lot of effort for relatively little gain. One of the most common testcase creation productivity killers with GUI test suite automation (especially with new test automators) is attempting to write all encompassing inventorying testcases of containers, their controls and their enabled/disabled states. Who can blame them? Manually testing that stuff over-and-over can drive you mad or bore you into a coma. What they fail to realize is that in most cases what they're actually testing is the functionality of unmodified standard SDK controls. There are much juicier bugs to be uncovered and squished in the less trustworthy functions of the application they'd been given to test.

    Target custom controls with special testcases - chances are pretty high that they're going to be a oneshot effort anyway. Leave the functional verification of inventories of enabled/disabled states and related dependencies to feature-specific testcases that contain the required prerequisite actions (and knowledge) imbedded within their setup routines.

    As far as how to obtain dynamic information check out GenerateDecl(), GetChildren() and GetContents(). The last two will be the most useful.


    John


    ------------------

  3. #3
    Member
    Join Date
    Oct 2002
    Location
    Alameda, CA
    Posts
    50
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Something from Segue Past

    Good post John.

    Alos, look at GetEverything() and VerifyEverything().

    ------------------
    -Josh
    -Josh

  4. #4
    Super Member
    Join Date
    Jul 2001
    Location
    Earth
    Posts
    1,882
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Something from Segue Past

    GO! and it's source code have been made available for registered users to download, use, modify or just to learn from.
    http://customers.segue.com/downloads....0.1/index.htm



    ------------------
    James Soderborg
    http://www.ameliortech.com
    jamesso@ameliortech.com

  5. #5
    Member
    Join Date
    Mar 2002
    Location
    El Segundo, CA, USA
    Posts
    37
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Something from Segue Past

    Found the answer to my own question. If you need to use it, you need to create a registry key named 5.0 under HKEY_LOCAL_MACHINE\SOFTWARE\Segue Software Inc\SilkTest since the SmokeUI.exe has a hardcoded value to look for the 5.0 key. Just copy the info from your 5.5 key

    ------------------

  6. #6
    Member
    Join Date
    Mar 2002
    Location
    El Segundo, CA, USA
    Posts
    37
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Something from Segue Past

    Thanks for the link. After following the insructions to use it, it indicates that it can't find qualityworks or silktest. I'm running 5.5.3 any ideas why. The invoke tries to start the smokeui.exe but has the error above. Same error if I try to start smokeui by hand.

    ------------------

 

 

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

vBulletin Optimisation provided by vB Optimise v2.6.0 Beta 4 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
User Alert System provided by Advanced User Tagging v3.0.9 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Questions / Answers Form provided by vBAnswers (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
vBNominatevBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Feedback Buttons provided by Advanced Post Thanks / Like (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Username Changing provided by Username Change (Free) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
BetaSoft Inc.
Digital Point modules: Sphinx-based search
All times are GMT -8. The time now is 02:08 PM.

Copyright BetaSoft Inc.