Slashdot Mirror


Automatic Functional Testing for Mac and Linux?

testYourGUIS asks: "I work with a company that tests consumer and business software for various venues. One of the programs we rely on heavily is called Rational Visual Test, which is a VB-like compiled programming language that works directly with Windows API to simulate mouse clicks, text entry, menu pulldowns, and so on. We use them to stress-test various applications, collect the results, and then send the vendors a spreadsheet showing what we found. Recently, pressure has started to produce the same results on Mac OS X and possibly Linux applications. I was wondering if anyone knew of such software that works on Mac OS X, and how to go about doing this for Linux?"

"For example, a vendor has a database interface, and wants to know how many times we can access a series of records, what the results show (are the right, blank, time out?), and how long it took for the search to take place during various times of the day, and so on. So we emulate one of their data entry people by logging onto the system, putting in some search parameter from a script, and then record what the text (or error message) was when it came back. Yes, we could connect directly to the SQL database without their front end, but it's the combination of their front end and the database we usually test. We have found many examples where were can connect raw, for instance, but the front end displays a timeout. We also test things like 'What happens if the user enters a colon or asterisk?' or 'What if the text entered in the box is over 256k?' Then we tell the vendor the results, and they hopefully fix them based on the data we gave them."

200 comments

  1. AppleScript by krog · · Score: 3, Informative

    you can do this with AppleScript, quite possibly the most underrated language of its kind.

    1. Re:AppleScript by chris613 · · Score: 1, Informative

      "underrated"? Applescript is cumbersome, painful, and WAY too unreliable to be used for verification testing. I've had serious trouble just getting applescript to run and then close certain stock applications. It's a broken mess, and I wouldn't recommend it to anyone, especially not for testing.

      --
      -=Chris -- Stop feeding microsoft. DON'T USE HOTMAIL! ---HUSHMAIL---
    2. Re:AppleScript by Ioldanach · · Score: 2
      Can applescript handle running 1000 concurrent users from a desktop machine simulating 1000 concurrent users hitting the server?

      What he needs is a load test and functional test product similar to Rational's, but cross-platform. I'd suggest looking into Mercury Interactive's software, though I'm not sure just how cross-platform it is.

    3. Re:AppleScript by scrod · · Score: 2, Informative

      Actually no, that wouldn't do him any good. He would still have to implement the scripting commands in his program. He wants something to simulate the use of the actual interface, not call the underlying functions.

    4. Re:AppleScript by Anonymous Coward · · Score: 0

      AppleScript can simulate interface actions. rtfm.

    5. Re:AppleScript by DLWormwood · · Score: 2, Informative

      This assumes that the application being tested is fully scriptable. This requires a factored application design and/or an object model to convert AppleScript commands into their corresponding events. Historically, Mac OS development tools don't automatically create apps with such a structure. And as another poster noted, the means to have AS work with non-scriptable apps requires the use of unreliable "osaxen" that make timing and reliablity metrics meaningless.

      --
      Those who complain about affect & effect on /. should be disemvoweled
    6. Re:AppleScript by Anonymous Coward · · Score: 0

      I would have more faith in the notion that the stock applications were broken, more than I would the notion that Applescript was. Applescript has lived through every revision of the Mac. :)

    7. Re:AppleScript by Anonymous Coward · · Score: 0
      Applescript is cumbersome, painful, and WAY too unreliable to be used for verification testing
      That hasn't been our experience. I wouldn't rely on Applescript for verfication testing simply because that's not what it was made for; however, it is a clean and easy to learn language that manages to be quite powerful. We rely heavily on it at my workplace and it hasn't let us down so far.
    8. Re:AppleScript by scrod · · Score: 1

      Show me tfm, dipshit. They can only simulate interface actions with a scripting addition.

    9. Re:AppleScript by dozer · · Score: 1

      You can do this with AppleScript...

      No, you can't. How does AppleScript "simulate mouse clicks, text entry, menu pulldowns?"

      Answer: it doesn't. It calls the application directly, skipping the UI. Which is not so good if you want to do user interface testing.

    10. Re:AppleScript by Anonymous Coward · · Score: 0

      Nah, I stopped using it when they removed Turtle graphics.

    11. Re:AppleScript by Altus · · Score: 1

      so use a scripting addition.... duh

      there is one called player (as in player piano) that seems to work pretty well...

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

    12. Re:AppleScript by guttentag · · Score: 3, Informative
      How about QuicKeys? When I couldn't get AppleScript to translate spoken commands into certain keystrokes and mouse clicks in my mapping program, I found that QuicKeys was able to do the job. (I ended up using AppleScript for the Speech Recognition input and QK to manipulate the interface)

      Someone mentioned server load testing earlier... if that's what you're looking for, remember that Mac OS X is basically a pretty window manager on top of a flavor of FreeBSD -- you can have cron automate shell scripts and perl.

    13. Re:AppleScript by Aqua+OS+X · · Score: 2

      This is what I thought as well, However creating an AppleScript would probably take forever.

      I think this guys best bet is to develop using cocoa and to give a timed public beta to the mac community.

      However, I couldn't hurt to check out Apple's developer connection page as well. There is a -lot- of good info there. Ask some developers at Apple. Moreover, try to ask some developers from the OmniGroup ( http://www.omnigroup.com ). They do a lot of consulting, they are friendly, and they have been developing with NeXT, Rhapsody, and OS X for years.

      --
      "Things are more moderner than before- bigger, and yet smaller- it's computers-- San Dimas High School football RULES!"
    14. Re:AppleScript by Anonymous Coward · · Score: 0

      About as cross platform as a thing that isn't very cross platform at all, really.

    15. Re:AppleScript by Anonymous Coward · · Score: 0

      *Prefab*Player*
      or any of the useful mouse-click osaxen.

    16. Re:AppleScript by phillymjs · · Score: 2

      While certainly not a suitable answer to for the guy who Asked Slashdot, AppleScript is fantastic. How the hell is it cumbersome, painful, and unreliable?

      If you can read and write English, you can become a pretty decent AppleScripter in a few hours. Pick up a decent book on it, and you'll be making your Mac do backflips in a few days.

      I've used AppleScript to write a CGI that duplicates the functionality of Outlook Web Access with Microsoft Entourage.

      I also make extensive use of it in my web-based control system for my home automation rig-- hell, AppleScript is the BACKBONE of my home automation rig, gluing together various apps.

      In about 20 minutes one day, I wrote a script to strip out the stupid, extraneous shit from "CNN Breaking News" e-mails, create a new message with nothing but the actual news item in it, and send it along to my cell phone.

      One of my clients (a huge, multi-national food company whose products are mm mm good) uses two AppleScript CGIs that I wrote for searching job archives they have on their internal web site.

      Sure, sometimes I've had to write a small 'test' script on the side to help myself understand how to extract a particular data item from a record, but it's a relatively painless process.

      Whenever you have trouble with a scriptable app not made by Apple, blame that app's vendor for not doing a good enough job at making it scriptable, DON'T blame AppleScript.

      ~Philly

  2. testing tools by Anonymous Coward · · Score: 5, Informative

    try OpenSTA. Its an open source automated testing application, similar to Rational's product.

    www.opensta.org

    There is a commercial company that provides support at www.opensta.com

    1. Re:testing tools by mmurphy_helix · · Score: 1

      I took a peek at this, and it appears OpenSTA is for Web-based testing, not GUI testing. Did I get that wrong?

      --
      ----------
      Mark Murphy, Helix Community Manager
      CollabNet, Inc.
      http://www.helixcommunity.org
    2. Re:testing tools by neves · · Score: 1

      No. From their site: OpenSTA graphs both virtual user response times and resource utilization information from all Web Servers, Application Servers, Database Servers and Operating Platforms under test, so that precise performance measurements can be gathered during load tests and analysis on these measurements can be performed.

    3. Re:testing tools by Anonymous Coward · · Score: 0

      OpenSTA is for HTTP and HTTPS stresstesting, not for GUI. It does fairly well in this matters, but is not what the original author was looking for.

      The commercial support page you mentioned has not been updated for quite some time - but there's replacement coming up - check http://portal.opensta.org/faq.php?topic=Commercial Support and other topics in this faq for more information.

      Olaf

    4. Re:testing tools by leandrod · · Score: 3, Informative

      For all I could gather OpenSTA is still MSW32-only, with plans to porting to other platforms; and it can't yet do tests other than http yet.

      IANATester.

      --
      Leandro Guimarães Faria Corcete DUTRA
      DA, DBA, SysAdmin, Data Modeller
      GNU Project, Debian GNU/Lin
    5. Re:testing tools by Anonymous Coward · · Score: 1, Informative

      Trust me, I use OpenSTA at work and its not what I would call 'stable' yet.

      Also, it is designed to give perforance stats on web-based apps, not checking for failures like the person asked for (although I guess you could look at the number of 404 errors and then track them through the audit log for each test).

      Also another major drawback is that it seems to hook into several components of NT/2000/XP to run the tests so it won't work on any other OS's, although you can test whatever type of web server and OS you want.

      Well thats my 2p on the subject...


      * This Christmas give your child a gift they wont forget, Mental Blocks! *

  3. For what it's worth... by dispensa · · Score: 1
    AutoIT is cheaper

    1. Re:For what it's worth... by Anonymous Coward · · Score: 0

      I love that "Diablo 2 'Cheaters' Click Here" bit at the top of the page.

    2. Re:For what it's worth... by Izanagi · · Score: 1

      Don't tell the MPAA or RIAA about this software!! They will use it over P2P networks to delete our files automatically.

      --
      SCO (noun.)- A Slimy Corporate Ogre. Often seeks free money.
    3. Re:For what it's worth... by theNote · · Score: 1

      OMG, soneone mod this up.

      I just downloaded and installed this program and it rocks.

  4. inexpensive cross platform functional testing by Anonymous Coward · · Score: 0, Funny

    umm... interns?

  5. Hmm. by dasmegabyte · · Score: 5, Informative

    Automatically uses the API to interact with the machine? Yeah, they've got this for Mac...it's called AppleScript and it's been around for roughly 20 years.

    Don't be scared by the name "script"...there are visual tools for ascript and the language itself is so simple my mom could do it.

    --
    Hey freaks: now you're ju
    1. Re:Hmm. by RazorBlade99 · · Score: 1

      Don't they use Expect on top of TCL/TK for automated stuff in Unix for a long time now?

    2. Re:Hmm. by elmegil · · Score: 1

      That does more of putting a gui in front of non-gui elements that are normally interactive. Not the same as automating an existing gui.

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    3. Re:Hmm. by great_flaming_foo · · Score: 1

      From what I head TCL works well if you are dealing with a CLI but I'm not sure if it will work on a GUI under X. Does any one know if it is possable to get a null X server to send scripted events to a client? That might work.

    4. Re:Hmm. by Quixotic+Raindrop · · Score: 1

      Additionally, if you have access to the source of the basic front-end of the UI, it would be pretty easy to create a module that will feed events to the event loop. Stub out calls to RunApplicationEventLoop() or ReceiveNextEvent() and direct them to your module, which then generates a random (or, sequentially un-random, or pre-determined un-random) relevant event, and pass that event back to the event handler.

      Seems plausible to me. Maybe I'm weird.

      --
      Only two things are infinite, the universe and human stupidity, and I'm not sure about the former. (Einstein)
    5. Re:Hmm. by Anonymous Coward · · Score: 0
      dasmegabyte writes:
      the language itself is so simple my mom could do it.
      Your mom's so simple that I could "do" her.
  6. XRunner by micantos · · Score: 5, Informative

    Check this out for some pretty reasonable X-windows testing. Heard quite a few positive things about it.

    1. Re:XRunner by Anonymous Coward · · Score: 0

      I've used the mercury interactive test suite and it's quite likable. I highly recommend it. It's got a nice c-ish test script language.

    2. Re:XRunner by Anonymous Coward · · Score: 1, Informative

      We currently use Winrunner, The win32 equivalent of XRunner by Mercury Interactive. We've had lots if problems with this product, It's very buggy for what my standard of a automated test suite should be (hmmm a Automated test suite that actually has ben TESTED?). Constant restarts, variables changing values and so on are day to day recurrences. The support from MI is extremely poor, generally taking days to weeks to get any issue resolved. XRunner might be a bit more stable, but given its high price tag and the poor quality of this product I'd definitely advise anyone to stay away from this.

    3. Re:XRunner by windex · · Score: 0, Offtopic

      If you post as AC, no one will beleive you. :)

    4. Re:XRunner by Ominous+Armed+Cow · · Score: 1

      If you think that price is high, check out their LoadRunner products (75K-275k, depending on what architecture you want to test).

      But I agree, WinRunner blows. So do many of the competing products, (ahem, QARun) which all seem to lack serious QA prior to release. This is what you get when you've have to fight over a few thousand customers who are used to paying ridiculous amounts of money for broken enterprise software.

    5. Re:XRunner by Anonymous Coward · · Score: 0

      I haved used LoadRunner and tried WinRunner. The real value is added when testing a variety of application protocols and platforms. Needless to say the engineers from Israel are proud of their work and solve any problem extremely quickly, even when compared our own developers. I can only guess that working in the US means you are faced with the bureaucracy of tiered support.

    6. Re:XRunner by Anonymous Coward · · Score: 0

      Yeah. The LoadRunner product is expensive but it is better than anything else that we have tested. That isn't to say that it doesn't have bugs. It does, and plenty of them. What does this say about the competition?

    7. Re:XRunner by Anonymous Coward · · Score: 0

      It works fine if you know what you are doing and apply proper software development techniques. If your source code is shit, it's shit no matter if it's an application or a test script.

    8. Re:XRunner by Anonymous Coward · · Score: 0

      So what you're saying is that X/WinRunner works fine, provided your software works perfectly to begin with, and you're not expecting X/WinRunner to actually find any bugs?

    9. Re:XRunner by Anonymous Coward · · Score: 0

      LoadRunner is quite a good product. Their licensing scheme is totally unworkable though. Having to order a time-limited (for us usually 1-2 weeks) license node locked to a specific machine is a pain in the ass. When you're testing infrastructure that spans over several tiers through several environments you dont want the added hassle of a license failing on you (wrong licence/wrong node etc.) - grinding the entire test to a halt (especially when 30+ people are involved in the testing). This has happened to me on two occasions. The administrative process of ordering the licenses is unacceptable and the sole reason for me looking into other alternatives.
      - In short: "LoadRunner is a technically capable product rendered useless by mindless license administration routines".

    10. Re:XRunner by Ominous+Armed+Cow · · Score: 1

      Forget the competition. What does this say about the marketplace for stress/functional automation tools? I marvel that so much is paid for so little.

  7. Hire a monkey by Anonymous Coward · · Score: 0, Offtopic

    Just issue random click and random key stroke ....

  8. Couldn't you use PERL? to do a lot? by Soggy_Cornflake · · Score: 1, Insightful

    I've worked with Rational Visual Test(or Irrational Test as we often refer to it.) With both you can call commands from different programs. I have't tried doing similar tasks in PERL, but mostly because I have not immersed myself in PERL.

    1. Re:Couldn't you use PERL? to do a lot? by selan · · Score: 2
      Rational Visual Test(or Irrational Test as we often refer to it.)

      <g> IIRC, it's called Visual Test because it used to be Microsoft Visual Test and was bundled with Visual Studio. Then they sold it (back?) to Rational.

  9. Java... sort of by d3xt3r · · Score: 4, Insightful
    Are these applications you need to demo like this, Java Swing apps? If so, you can use built-in javax APIs to do this. You could simulate user actions this way, mouse movements, etc as a "demo" mode for the user.

    Obviously this would work on Linux, OS X, and Windows as well.

    Hope this helps.

    1. Re:Java... sort of by Anonymous Coward · · Score: 1, Funny
      using java.awt.Robot, it's quite simple.
      to quote the documentation:
      This class is used to generate native system input events for the purposes of test automation, self-running demos, and other applications where control of the mouse and keyboard is needed. The primary purpose of Robot is to facilitate automated testing of Java platform implementations.
      I've used it to make remote control apps that work in windows and linux: take a screenshot of desktop A, send it to B. Send mouse events from B to A. Freak out user on machine A. :-)

      Quite simple, and easy to do in Mac OS as well!
    2. Re:Java... sort of by Evil+Pete · · Score: 2

      At work here I suggested as a product that was in beta, on the basis that it looked interesting and "why not give it a shot" and the other recommendations were so expensive. And the guys in testing got a trial copy and have been very happy with it, though I haven't used it myself. It is qftest from Quality Software First. We build our java stuff for Win2K , Linux and Solaris. And this seems to do the job well. And its dirt cheap compared to anything from Rational or Mercury where you've gotta shell out big time.

      --
      Bitter and proud of it.
    3. Re:Java... sort of by Calomnious+Awkward · · Score: 1

      BTW, java.awt.Robot allows to generate _OS-level_ user events.
      You can programaticaly double click somewhere on a screen location, say where your 'My Documents' shortcut is on your desktop, and that program will run and open the folder. I have done it.
      Not limited to the Java objects.

      --
      Ceci n'est pas un sig
  10. Re:In case it gets slashdotted by yorgo · · Score: 5, Informative

    Check out http://www.testingfaqs.org for a short list of possible contenders (GUI test drivers).

  11. Legos! by djtack · · Score: 5, Funny

    I've got it... you need Lego Mindstorms. Just build some robotics to push the mouse around, whack random keys, etc. Best of all, such a system would be fully platform-independant. I bet Microsoft is already doing this, only they call it "genetic programming".

    1. Re:Legos! by Anonymous Coward · · Score: 0

      Yeah, and upload a "battlebot" proggie into it.

    2. Re:Legos! by tylerdave · · Score: 1

      Lego plural is lego thank you very much!

      one lego
      two lego
      three lego
      one million lego

    3. Re:Legos! by johnthorensen · · Score: 1

      The funny thing is, WAAAAYYYY back in the day, mebbe 10 years ago, I remember ZDLabs bragging in PC Magazine about how their testing facility had this jury-rigged arm that pressed keys on a laptop to simulate use for battery life tests.

      Funny thing is, I remember thinking, why not just use a microprocessor hooked up to a keyboard controller, and plug the thing in thru the external keyboard port??? (yes, most laptops back then had 'em) :)

    4. Re:Legos! by RoscoHead · · Score: 1

      Lego plural is lego thank you very much!

      Actually, LEGO is an adjective, so has no plural.

      one LEGO brick
      two LEGO bricks
      .....

      --

      Why is there only one Monopolies commission?
  12. We're working on one... by matticus · · Score: 3, Informative

    Actually, the company I am currently employed by is in the process of writing a system/gui test environment for this very purpose. One caveat-it's only for Java, but when we complete it (very soon), we will release it to the public. our address is www.atomicobject.com.
    The name of the project will be HASTE, look for it in a month or two.

    1. Re:We're working on one... by Anonymous Coward · · Score: 0

      how exactly do you send mouse clicks and keystrokes from java into a windows or X11 application ?

    2. Re:We're working on one... by spicysquid · · Score: 2, Informative

      you can get system.out stream and write out the character sequences to that byte if it is a terminal/telnet program. For swing programs, you can just fire off actionevents to take care of the items.

    3. Re:We're working on one... by zuzzabuzz · · Score: 0

      Using java.awt.robot (since jdk 1.3), you can send native events(keyboard and mouse) to the system. Of course, you're driving blind. It's hard to record actions, because java apps can only listen to the mouse/keyboard so long as the java app has focus. There may be a way to tap into the native event queue, maybe via native code and JNI.

      --
      -buzz
    4. Re:We're working on one... by Anonymous Coward · · Score: 0

      The only informativ thing here is that the poster don't know shit.

      Moderators either, btw.

    5. Re:We're working on one... by Principal+Skinner · · Score: 1

      Any way you could speed up development on it?

      --
      one hundred twenty
      is just enough characters
      to write a haiku
  13. XTest and Expect ? by too_bad · · Score: 4, Informative
    Isnt this what XTest and
    Expect allows us to do on Linux
    (and a vareity of other operating systems) ?

    --
    DO NOT PANIC
    1. Re:XTest and Expect ? by Vee+Schade · · Score: 2, Informative

      XTest must be compiled into X as an extension and appears only to allow "fake key presses" which will probably not be very useful in this context. Expect allows for "automating interactive processes" (and is VERY good at it - IMHO), where such processes are CLI-driven (e.g. telnet, ftp, etc.), and so is also not useful in this context.

      --
      "LinuX - Dropping the c u r t a i n on Windoze." -- Vee Schade, vschade at mindless dot com
    2. Re:XTest and Expect ? by cduffy · · Score: 4, Informative

      Actually, android lets you script fake keypresses, mouse events and such from a TCL interpreter (which expect happens to be). However, it doesn't let you see and check widget contents as text in the same way that many of the Windows-based test systems do. The commercial products for X suffer from similar failings when not using explicitly supported widget sets; as such, automated testing is just one of those things that isn't so well supported under X Windows. Hopefully Berlin (or some other successor) will help in this.

      (FWIW, my job very recently involved buying or writing an automated test scaffold for graphical apps on Linux that would work across architectures and windowing systems -- it turned out that the latter was necessary, as the available commercial products just weren't/aren't cross-platform capable, and android has some serious faults which I'll expound on if asked. The product partially exists, having been put on hold for other internal development... perhaps when it's finished we'll release it under an open license).

    3. Re:XTest and Expect ? by Anonymous Coward · · Score: 0

      Expect is CLI, yes, but Expectk is quite GUI... ("EWWW!!! It's goooooeeeeey")

    4. Re:XTest and Expect ? by alain1234 · · Score: 1

      For replaying macros under X (just replaying them, there's nothing about testing here), I've written this small program, you can consider it as an interpreter for XTest-style events :

      xreplay

      For example I'm using it to initialize an environment with a lot of sessions on KDE Konsole, all logged in and with a correct name

      Alain

    5. Re:XTest and Expect ? by too_bad · · Score: 1
      Hmm .. probably we have a product idea here. I agree that XTest
      is basically generating fake key presses and mouse events.
      What we really need is an X-Extension which can generate more intelligent
      events: Events specific to each widget. There could be a way of specifying
      which widgets take what events, (or better still, parse source code
      and find that out?)

      Not sure what really the market for such a thing is. But seems to be,
      implementation should not be too hard, what say?

      --
      DO NOT PANIC
  14. Automatic Functional Testing for Mac and Linux? by jay_in_pa · · Score: 2, Insightful

    You might be able to use Rational Visual Test with a windows based X-server to control Linux (or any Unix) apps.

    1. Re:Automatic Functional Testing for Mac and Linux? by Anonymous Coward · · Score: 1, Informative

      no you won't

      The problem is that tools like VisualTest and WinRunner can find specific objects (buttons, dropdown boxes etc... and treat them as objects. When you use such a tool with an X Server, all the tool can see is a mouse click at a specific location. This makes your automated playback screen size and window location dependent. This is not a reliable way to handle this.

  15. www.gnu.org by Anonymous Coward · · Score: 0

    They can stress all the bugs out a program in no time :)

  16. There are 2 ways to do it... by Anonymous Coward · · Score: 0

    One way (the simpler way) is just write a program using the xtest extension to send keyboard/mouse events to said applications...

    But another way (and more affective way) is to use XGGI and force it to use your own data streams for you input and then you don't even have to really display you output to a video card, you can just keep it in memory :), This way you can do REAL test without some of the speed overhead that the video cards induce :)

    - r0gu3

  17. DOS4GW by qurob · · Score: 0, Offtopic


    Remember when Rational made that?

    Opened up a whole world beyond 16 bit DOS apps.

    Behold the power of Watcom C!

  18. CPAs by Anonymous Coward · · Score: 0

    Here we lock the accountants in a room with one bottle of Orangade and a bag of Fritto's, and tell them the only way out is by finding the hidden "key" in the app. Then we video tape them, and if the results are not good for the client, we can always send the tape to Fox for "when stupid white-collars go bad"

  19. Automatic Mouse Movement by Nukenbar2 · · Score: 0, Offtopic

    Don't off topic me too quickly. It is slightly relevant. Remember back in 1999 and 2000 when companies would pay you to surf the web with on of their ad windows at the bottom? Well a friend of mine and I wrote a little Visual Basic program that would randomly move the mouse to some point on the screen and click. It had a random time movement from anywhere from 20-80 seconds and we restricted where it would move so that it would not hit the start menu and accidentally log you out! I worked great and each of us made a few hundred bucks over a few months using it on a few different computers with different accounts. My friend finally got caught on one of them so we decided to quit, but it sure was an easy way to make some cash.

    1. Re:Automatic Mouse Movement by bmwm3nut · · Score: 1

      heh, i remember that. i also wrote a program to do that. brings back memories of screwing off in college.

    2. Re:Automatic Mouse Movement by netsharc · · Score: 1

      Those were the dot.com days... when things started going down the drain, they changed things so you could make $20 when you surf, 2 hours per day for 5 years.. how exciting.

      --
      What time is it/will be over there? Check with my iPhone app!
  20. a little offtopic, but.... by jeffy124 · · Score: 1, Flamebait

    I think there's more to that story. A company hired to test program written for Mac OSX and Linux, not just Windows. Anyone else catch what I'm getting at?

    --
    The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
    1. Re:a little offtopic, but.... by Anonymous Coward · · Score: 0

      The effect of .Nyet?

    2. Re:a little offtopic, but.... by Anonymous Coward · · Score: 0

      No, no. Not on Linux, regardless of what they are saying.
      If there was no Mac in this, I would think of Borland Delphi/Kylix project, but looks like its just Java.

  21. It's called freshmeat and google. by iamwoodyjones · · Score: 1

    Why don't these people just do a search on freshmeat and google like the rest of us? You'll undoubtable just hear from the other slashdotters who just got down googling and freshmeating (he he he) for their results.

    Okay there's an offchance that another slashdotter might be working on an esotric project like he is and happens to have a viable solution. Highly unlikely. Or perhpas slashdot just wants to bring this to our attention. Don't know why though? Or mabey IT'S SHAMLESS ADVERTISEMENT PLUGGING yet again =P

    Go ahead and give me your worst repliers.

    1. Re:It's called freshmeat and google. by nvainio · · Score: 1

      Sure, Google gives you software but Slashdot could give also opinions, experiences and ideas. (Sometimes it actually does.)

    2. Re:It's called freshmeat and google. by Anonymous Coward · · Score: 0

      Unfortuanetly those ideas, opinions, and experiences mostly consist of posts containg:

      Stephen King is dead posts

      goatse links

      poop bot posts

      a dozen first posts

      oh and of course posts that point out OBVIOUS things... Much like yours!

    3. Re:It's called freshmeat and google. by des09 · · Score: 1

      Suggested format: I just did a google / freshmeat / sourceforge search for whizzbang-mousetraps, and turned up superProjectX... I installed it and... Has anyone else used this? Anyone got any other suggestions?

      Actually, I usually scan these posts, they often spin out some very interesting viewpoints and experiences, especially when the topic is a development or testing tool, I probably encountered ant on /. I would also think that the amount of interest generated for the projects mentioned, which are usually Open is not insignificant.

      My theory is that these are usually people who have not been trolling sourceforge or building linux boxes fgor years, are in fact probably coming out from the dark side. Have some compassion for them!

      --
      .sigless since 2003
    4. Re:It's called freshmeat and google. by egreB · · Score: 1

      Well, /. gives you opinions and user experience. Some of the posts actually give a rational review of software, with replies and more opinions. It ends up being a discussion on what software would be best for the task at hand.

  22. Rational preVue-X by Amigan · · Score: 1

    Since you're already a Rational customer, I would check into Rational preVue . Many years ago it had another name - and was a product from a company that Rational bought...

    --
    "Software is the difference between hardware and reality"
    1. Re:Rational preVue-X by Anonymous Coward · · Score: 0

      I concur with this. It is the most like the Rational and M$ GUI testers we've found for X.

      However, it has more than a few foibles, is not obvious to set up and the X version appears to basically fall off the Rational radar these days !

  23. xnee by tompa · · Score: 3, Interesting
    Don't know about OS X, but here is an excellent GPL'ed event recorder/playback app for X Windows: xnee.sourceforge.net

    you could always port it to OS X ... :-)

    /tc

  24. MetaCard by Anonymous Coward · · Score: 0

    I was on a UNIX project almost 10 years ago that used MetaCard to do this kind of thing. Haven't used it myself and I think it is limited to simulating a user running a GUI (and for creating demos, etc.), but it is cross-platform...

  25. Check out Test Quest Pro by Jay · · Score: 3, Informative

    It's a PC you can use to drive keyboard / mouse input into another system. It comes with a video capture card to read the output and make decisions about whether the test was successful or not.

    It's fully scriptable using a c-ish syntax, and comes with a nice IDE and runtime environment to get the work done. It seems like it may be a nice match for what you want to do.

    Here is more info.

    --
    You think emacs is evil?! You've never used VM's XEDIT have you?!! That's evil, baby!
  26. easy API testing - by Anonymous Coward · · Score: 0

    we call it "Beta" testing...

    1. Re:easy API testing - by Anonymous Coward · · Score: 0

      There aught to be a new category. "Anonymous Idiot". If you have no idea WTF you're talking about then shut the hell up and listen instead.

  27. I've got two words for you... by pi_rules · · Score: 5, Funny

    Trained Monkeys.

    1. Re:I've got two words for you... by IndependentVik · · Score: 1

      Remember when Mojo kept all the doughnuts to himself?

      Homer: Stop that! You're a helper monkey! This isn't helping!

      --
      I'd suggest you don't use Slashdot as your only news source, or you will suffer permanent brain damage.
    2. Re:I've got two words for you... by RandomCoil · · Score: 2

      Actually, depending on the application, you may want "untrained" monkeys. "Trained" monkeys might not provide a reasonable simulation of your end-users. :)

      You might also look into pigeons.

    3. Re:I've got two words for you... by tetrode · · Score: 1

      Ah, yes, that's it. Hire a bunch of MSCE's

    4. Re:I've got two words for you... by davidsansome · · Score: 1

      Even better, pigeons!

      --
      -- Wibble
    5. Re:I've got two words for you... by Anonymous Coward · · Score: 0
      Actually, depending on the application, you may want "untrained" monkeys.

      Unfortunately, they're already busy in their marketing jobs.

    6. Re:I've got two words for you... by blackcat++ · · Score: 1

      Man, you want the job to be done well.

  28. testing by Anonymous Coward · · Score: 0

    We use a product called Test Quest.
    http://www.testquest.com
    It is hardware based, so it may be less dependent on OS.
    I believe it was $50,000 but not positive.
    We are just starting to use it and have found it to work quite well and also work over our KVM but a clean signal is needed over KVM's.

  29. All you need is a cat by hipnotik · · Score: 2, Funny

    Let a cat in the room and pretend you are doing some serious work.

    1. Re:All you need is a cat by b1t+r0t · · Score: 2

      So what do you do when Accounting asks you about all those purchase orders for catnip?

      --

      --
      "Open source is good." - Steve Jobs
      "Open source is evil." - Microsoft
  30. Expect by Prof_Dagoski · · Score: 2

    Here's a website that talks about the language: http://expect.nist.gov/. I bet there's other sites so check google. O'Reiley also has a book about it. I still think I'd use Applescript under MacOS, but under Linux I'd give expect a try. I played with it a little under Solaris and it looked pretty useful. I was able to automate the setup for US Robotics modem racks and Cabletron ethernet hubs using expect. Never did get that stuff totally debugged and my script would go crazy, but that's not the language's fault.

    1. Re:Expect by Anonymous Coward · · Score: 0

      From the faq at http://expect.nist.gov/FAQ.html#q23 :

      Expect cannot automate automate arbitrary X-based apps.

    2. Re:Expect by mikeee · · Score: 2

      Well, all you need to do is run X over aalib and you can automate it with expect just fine... :)

  31. Here's an idea by xchino · · Score: 0

    If you're already using winblows, to test X apps, just VNC to the application you want, and then run the stress test on the VNC session. All mouse clicks and keypresses will be performed on the remote computer. That way you can use the same program across platforms, instead of figuring out a seperate application for each OS you test.
    You can also reverse this process if you'd rather use your linux box to test winblows.

    --
    Everyone is entitled to their own opinion. It's just that yours is stupid.
  32. Depends by schnitzi · · Score: 1

    Depends on your budget. Can you afford a thousand monkeys?

    --



    I object to that article, and to the next reply.
    1. Re:Depends by IndependentVik · · Score: 1

      I don't know. Most QA Depts aren't anywhere near that large *rimshot*

      (Disclaimer: QA is what I do for a living; I've got "joke immunity")

      --
      I'd suggest you don't use Slashdot as your only news source, or you will suffer permanent brain damage.
  33. Re:Here's a good automatic functional test by dkh2 · · Score: 2, Insightful
    "The more functional an OS, the more desktops it has."

    Yeah, right. That paraphases exactly why we've used VHS for 20+ years instead of Beta. NOT! It is arguable that the Apple was a superior computing platform to the IBM PC of its day. The IBM-PC had the full corporate power and marketing strength of, well, IBM behind it while the Apple had the comparatively limited resources of two guys named Steve.

    For the uninformed... Back in the days when the VCR was just being released on the world there were two competing formats, JVC's VHS format (which we all know) and Sony's Beta (a.k.a BetaMax). The latter was far superior but, alas, was first out marketed (a bit of history), then out litigated (Read case story). To date the majority of video production houses still use Beta because of it's superior image and audio quality.

    --
    My office has been taken over by iPod people.
  34. For Mac OS X... by Chops-Frozen-Water · · Score: 2

    You could probably roll your own rather quickly with the CGRemoteOperation API: /System/Library/Frameworks/ApplicationServices.fra mework/Frameworks/CoreGraphics.framework/Headers/C GRemoteOperation.h

    --
    The Future: Some assembly required; batteries not included.
  35. F-Script by Tomy · · Score: 3, Informative

    For Mac OS X have a look at F-Script. You can inspect a running program and call any method in that program and any method on any object in the Objective-C runtime. This should allow you to generate events or enter text in text fields, etc.

    Of course this will only work for programs developed using Cocoa. Can't help you with Carbon apps. You might be able to write something using the Apple Event manager.

    Last time I had to do this for Linux (and Gtk+) I had to roll my own.

  36. Use Google PigeonRank Technology (TM) ! by Yosemite_Mark · · Score: 1
    I'm sure it can be easily adopted to what you're trying to do!

    Google

  37. Robot and BeanShell by Joseph+Vigneau · · Score: 2, Interesting

    I'm assuming you're talking about java.awt.Robot. This, with BeanShell would allow test scripts for GUIs to be built.. A more sophisticated system would be able to capture AWT events, and store them in a file for later playback...

  38. xmacro by Garion911 · · Score: 1

    A while back I found an app called xmacro. Just a simple app to send mouse clicks and such. If you can't find a package to do what you want, you might be able to roll your own from it.

    Xmacro

    --
    Slashdot is like Playboy: I read it for the articles
  39. Slashdot math is at it again by spacefrog · · Score: 2, Funny

    it's called AppleScript and it's been around for roughly 20 years.

    Let's see here... 1993-2002 is roughly 20 years?

    Has CowboyNeal been teaching you "new math"?

    1. Re:Slashdot math is at it again by zulux · · Score: 3, Funny

      Let's see here... 1993-2002 is roughly 20 years?

      It is if you're using base 5 - due to a tragic accident involving penut-butter, weasels, and a large bowling-ball; and thus only have one hand.

      --

      Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

    2. Re:Slashdot math is at it again by King+of+the+World · · Score: 1

      We're on internet time, and you're five minutes too late, buddy!

    3. Re:Slashdot math is at it again by platypus · · Score: 1

      1993 is not a base 5 number, amd if it were, the difference could never be 20. :)

    4. Re:Slashdot math is at it again by bleak+sky · · Score: 1

      I think the poster's point was that 20 base 5 is 10, roughly how long ascript has actually been around.

    5. Re:Slashdot math is at it again by platypus · · Score: 1

      I understand that. But someone using base 5 wouldn't such numbers to describe the years.

    6. Re:Slashdot math is at it again by UranusReallyHertz · · Score: 1

      I assume your sig is meant to disparage Ballmer's intelligence, but did you ever consider that he was using "Free" as in "Free Speach". Thus he meant two different things.

      --
      Smoking is an expensive, slow, and unreliable method of suicide.
    7. Re:Slashdot math is at it again by platypus · · Score: 1

      Au contraire,

      it just shows one of the most successfull managers of today praising linux.

      I first didn't really get how this citation should express what you read into it. Now I think I got it, you mean cheap vs. free.
      No, I'm quite sure Mr. Ballmer knew exactly what he was talking about when he said free.

  40. Funny by psocccer · · Score: 3, Interesting

    I just posted a set of tools for automating X at my website that I recently created to make a bot that could play Yahoo! Spelldown. There are 2 parts to the tools, finding things on screen using a "visual grep" program that finds images inside of images, and xte, an app built on the XTest extension that allows scripting of moving the mouse, clicking, dragging, keypresses, etc. Together you can use them to make scripts that can identify buttons on screen or letter or words or numbers, whatever, and interact with programs. Still a pre-1.0 version, but it does everything listed above so far.

    BTW, don't use xse, which is a wrapper for XSendEvent, if you roll your own. There are so many places where it just doesn't work, or doesn't work right, because the XSendEvent function just doesn't work reliably. I lost a lot of sleep over that before I gave up and just wrote xte.

  41. QARun, QADirector? by edrugtrader · · Score: 2

    i think compuware's QARun or QADirector work on *nix

    --
    MARIJUANA, SHROOMS, X: ONLINE?! - E
    1. Re:QARun, QADirector? by KaiserSoze · · Score: 3, Informative

      Holy piss, madd scientist, I can't believe you recommended that ;)

      QADirector is not a testing language in itself. It is a harness from which to run the script generated by script writers. It used to be a Unix app, but when the switch was made to Wintel there were a few missteps. If you are looking for a test harness that is comprehensive (for Windows anyways) in its command-line options, look into QAD, otherwise I would go with Test Director by Mercury or maybe Segue's new product (I believe its called SilkPlan or something similar).

      QARun on the other hand is a pain in the ass. If you are looking for automation, don't use it. It's designed for straight-up "record and playback" style testing. If you wish to deploy these tests to client machines (something which some, but not all people want to do), do not use QARun. You can look into XRunner (it is the predecessor of WinRunner) by Mercury if it is still being sold/supported for *nix testing. I honestly don't know about Mac, our product doesn't run on it.

      If you want a serious evaluation document, I highly suggest heading over to http://www.qaforums.com and head to the Automation section. Post a query about the Mac and you'll probably receive a response from one of the moderators with a white paper that was written comparing all of the available tools.

      DISCLAIMER: My group uses QARun, QAD, Segue Silktest, and WinRunner, so as not to be accused of bias.

      --

      "What we elect to call imagination is mere combination of things not heretofore combined." - Frank Norris

  42. Re:here's some free advice by Anonymous Coward · · Score: 0

    your dick is that small?

  43. QuicKeys X by ktlyst · · Score: 1

    for mouse events, you can try QuicKeys X from CE Software for Mac OS X, anyway. It can enter text, too, and launch applescripts.

  44. VHS Beta by nattt · · Score: 1
    Video production companies, broadcasters etc use BetaCam, BetaCamSP, DigitalBetaCam, BetaCamSX etc. They are only related to BetaMax in 3 ways:
    1) They're made by Sony 2) They can use the same size cassette shell 3) They have Beta in their name

    They are all professional formats and are not the same as BetaMax, BetaMax II and EDBeta of old....

    --
    -- oldthinkers unbellyfeel ingsoc
  45. I'll do it! by robolemon · · Score: 1
    For the right amount of payment I've got a couple of friends who'd love to bang on the mouse all day! I tend to prefer the keyboard myself, so I'll do the typing. Best of all, we're entirely cross-platform (among platforms can handle physical input, that is).

    Finally, I've discovered a use for this strange box on my desk.

    --

    I design user interfaces for a free network management application,

  46. Rational Software and Linux don't mix by tuxlove · · Score: 2, Interesting

    Over the years I've asked Rational salespeople if they plan on porting some of their more popular debugging tools to Linux, such as Purify, Pure Coverage, Quantify, etc. The earliest responses to the question were, "What's Linux?" In later years, the response has simply been "No". I do not understand why, but it has been a major sticking point for me. More and more, people are developing software for Linux, and it's hard to understand why companies like Rational won't embrace it.

    I'll tell you, it's a major hassle to develop a product for Linux while being forced to debug it on Solaris because that's the only place our debug tools will run. The first company to make decent Linux tools that are similar to Rational's will have my business. And Rational won't.

    1. Re:Rational Software and Linux don't mix by Anonymous Coward · · Score: 0

      Check out Valgrind... Valgrind

    2. Re:Rational Software and Linux don't mix by Anonymous Coward · · Score: 0

      That's because Rational and Microsoft have entered some sort of strategic partnership. No wonder that Linux is being intentionally excluded.

    3. Re:Rational Software and Linux don't mix by Anonymous Coward · · Score: 0

      more true than you probably realize. Rational President was the only non-microsoft person to testify in favour of Microsoft during the anti-trust trials !

    4. Re:Rational Software and Linux don't mix by Anonymous Coward · · Score: 1, Interesting
      More and more, people are developing software for Linux, and it's hard to understand why companies like Rational won't embrace it.

      In this particular case: Acknowledging Linux as a platform, and thus the Linux software development process as a viable approach to software engineering, would prove some of their products useless.

      SCNR.

    5. Re:Rational Software and Linux don't mix by Tony+Hoyle · · Score: 2

      Rational haven't even ported (properly) their products to VS.NET yet... their 'VS.NET compatible' version of Purify is just an external app that you have to call up and load your EXE in, which sucks hard.

      I'm not impressed with their testing software - we paid for Rational Robot (£20,000 - something like 6 months software budget for a small company like ours) and a programmer has been trying to work out how to use it for another 6 months. It still can't test reliably. For that time/money we could have just had the programmer actually doing the damned testing themselves.

  47. Applescript, QuicKeys for Mac OS X and OSA by plsuh · · Score: 5, Informative

    AppleScript is great, but the app that you are testing must be scriptable. Many are today, but some are not. Furthermore, in this situation you want to test the GUI, not just the underlying object model which is what AppleScript talks to.

    However, AppleScript is not the only scripting environment for the Mac. Underlying all of the native scripting languages on the Mac is something called the Open Scripting Architecture. This allows any OSA component (i.e. scripting language) to talk to any other OSA component.

    One OSA component is QuicKeys, a great product that actually does simulate mouse clicks, keystrokes, etc., and is completely scriptable. It integrates completely with AppleScript and via the power of the OSA, with shell scripts and Perl as well.

    On top of this, Apple provides a powerful GUI building tool for AppleScript called AppleScript Studio, which is free. Plus, AppleScripts can talk across a network to do RPC. Imagine, you can have an AppleScript Studio front end that drives scripts on a set of machines over the network (so that you can assess performance under load). The individual scripts rely on AppleScript to drive the logic while using QuicKeys sequences to drive the GUI.

    The only issue here is how easily you can assess results. There's no general way to check what the GUI is showing other than a pair of Mark I mod 0 eyeballs, since grabbing data out of the app being tested (even simulating a copy-paste) only talks to the underlying data structures and does not address GUI bugs. A possible way is to arrange the windows in a known manner, turn off the menu bar clock, take a screen shot, and use a graphical comparison tool to XOR the bitmap with a known good screen shot to highlight differences, but this won't work if you're working with variable or randomly generated data.

    Disclaimer: I work for Apple, but these are my opinions only and do not represent any sort of official endorsement.

    --Paul

  48. Cross Platform Automated Testing by jordandeamattson · · Score: 1

    If you want a cross-platform automated testing tool that is:

    1. Localizable

    2. Non-Intrusive (tests the environment on which the user runs).

    Then check out TestQuest .

    While a bit pricey - consider it a capital expense - this system is fantastic. It was originally developed for testing medical devices and systems, where the FDA requires that what you test is what you ship exactly .

  49. VNC by Anonymous Coward · · Score: 0

    AFAIK, you can use a VNC X server with a custom "automated" VNC viewer to test any and all X apps.

    -JAB

  50. TestQuest hardware by Das+Kamikaze · · Score: 1

    Although not a software solution, we use Test Quest to automate our reboot and application execution tests. Basically the hardware in an external controller machine (a second PC) simulates keyboard and mouse actions, along with a bunch of discrete lines that can be set high and low for things like reboot, power switch, and floppy drive. The system can also read back discrete lines for things like "is the system powered on?", and can take a screen capture to compare bitmaps, or do OCR to read results. It's all controlled by windows DLLs that can be written by anybody with a basic understanding of C, or pseudo-automatically written with the TestQuest recorder system.

    They may have other newer systems, or a software solution for now, but for what we do it works great. We only test on PC hardware, but they have a variety of modules and interfaces for touchpads, VGA, svideo, Mac and Sparc hardware as well.

  51. Good topic of much debate by nigelc · · Score: 1

    Here's a site which will give you opinions and feedback on a wide variety of tools.
    QA Forums.
    Scroll on down until you get to the Testing Tools forum.

    --


    Cthulhu Barata Nikto
  52. Re:Here's a good automatic functional test by Anonymous Coward · · Score: 0

    Uh, your a bit of history link -- the urbanlegends.com -- says that VHS was superior. What gives? They were exact equals in quality, but VHS could record for longer, which was a big deal back then....

  53. Java's Robot class would work by napoleonin · · Score: 1

    Java has a Robot class that does this. It's pretty good, the only downside being that you have to specify locations by the pixel.

  54. Java solution by abamfici · · Score: 1


    Check out java.awt.Robot.

    ~Kevin
    :)

  55. OS projects, wine by throwaway18 · · Score: 1

    A lot of open source projects could benifit from automated testing. The wine project has spent nine years working on translating the windows API to X and reproducing the windows GUI.

    Many people think wine is a vital tool for greater use of linux. They rely on people downloading new versions and testing windows programs using whatever versions of X, system libraries and windows DLL's they happen to have and then posting bug reports in a newsgroup. There are still lots of quirks with relativly simple windows programs not redrawing or displaying dialogs correctly.

    I believe that wine would progress much faster if the wine developers could make a change then click test and later, with no more effort get a report saying "3 tests which failed previously now pass, 1 test which passed on the last version now fails".

    I will be very impressed if somone comes up with a free automated testing tool that allows tests to be set up easily and is powerfull enough to provide human readable results "the bitmap is drawn 1 pixel to the left", "text as expected but wrong font" "dialog appeared behind other window" etc.

  56. DejaGnu and friends by eyepeepackets · · Score: 2

    DejaGnu is a TCL/Expect testing harness provided as free software by the Gnu Project. Not sure if it has tk hooks (which would allow you to test X-based programs) so you might want to check. If you're trying to test programs on the postscript display of a Mac instead of X, well, I don't know if it would work. Also, check to be sure there is a recent version of TCL/TK and Expect for your machine before you pursue this too far.

    There is also LTP, the Linux Test Project, which may be of use to you as well. (Do a Google search for "linux test" and you'll find it quick.)

    If you're not a TCL programmer, you're probably not going to like DejaGnu very much. If this is the case, good luck with the GUI tool search; you can expect to spend some serious money for decent test tools. (The pun is simply there. If you look at it too long or pay too much attention to it, it may or may not vanish. Just chalk it up to some crazy cat and don't worry about it.)

    Best wishes,

    --
    Everything in the Universe sucks: It's the law!
  57. Re:AppleScript- You are all wrong by Anonymous Coward · · Score: 0

    look- it is quite simple to do this with applescript. there exist various OSAX which will simulate key strokes, mouse movement, and even menu selections in ANY application- scriptable or not.
    just to name a few:
    keystrokes and mouse movement/ clicking: Sändi's Additions OSAX
    menu events: Menu Events 1.3.1

    i have used this to automate various data entry jobs were the only way to get data into the system was through a painful web-interface. while simulating the keyboard and mouse was not the ideal way to put the data into the system, it was a hell of a lot faster/easier/ and more accurate than doing it by hand.

    in terms of claims that AS is less than robust-- obviously you are not writting the code correctly- as i have a number of AS driven CGI's running on a 25mhz machine (thats 25mhz!) that perform quite well- even under high loads.

    before you bash something that you all obviously have little knowledge of why not do a little research into it first.

    dylan

  58. Android by DumbSwede · · Score: 2
    Expect and Xtest have already been mentioned.
    Android runs on top of these and can be downloaded free for Linux and Unix

    See the July 2001 issue of "Dr. Dobb's Journal"
    for an overview of Android and how to download.

    Plays back keyboard and mouse events for most UNIX implementations. (maybe even Mac OS X)
    It is a little bit roll-your-own
    Expect to spend some time writing perl to support your android scripts.

  59. Timing metrics... by Ominous+Armed+Cow · · Score: 1

    ...aren't really necessary for functional testing, which is why most of these functional testing tools don't [more like can't] run in real time. IMO, these relatively pricey functional tools from the big venders could hardly be called reliable. I suspect that the tiny niche marketplace for such tools ensures that things will probably stay that way.

    OTOH, Real life timing is really important for scalability testing, i.e. the domain of load testing tools, which mimic front end client behaviour in real time via back-end automation. These are definitely far more reliable, but also exceedingly more expensive.

  60. Goodbye Karma (Obligatory Off-Topic Amiga Post) by derinax · · Score: 1

    ARexx used to do this on my Amiga back in '89. I remember that to launch applications using tooltypes defined in the icons (and to avoid launching via command line tooltypes in the startup-sequence), I ran an ARexx script that double-clicked on my drive, double-clicked on the Applications folder, and launched the apps I wanted running after I logged in. The script would then place focus in a new CLI window. All by scripting mouse events.

    *Sniffle, wipes tear from eye* Ah, the good old days.

    1. Re:Goodbye Karma (Obligatory Off-Topic Amiga Post) by mscheid · · Score: 1

      Heh, about a month ago I actually met a suit&tie guy who was reading reading a Rexx book
      because they use it where he works.
      Rexx won't die that easily, obviously :)

  61. Re:Here's a good automatic functional test by Anonymous Coward · · Score: 0

    ...and 4: they all use separate y/c video tracks, providing (think svideo vs composite) providing far superior video quality.

    The professional formats also use stereo audio tracks and such, but are VERY similar, and some are backwards compatible hardware wise to the original Betamax, IRRC.

    Sony licensed itself out of the market with a closed format.

  62. Virtual User by Anonymous Coward · · Score: 0

    This is an Apple developer thing... VU or Virtual User... It has hooks into the OS.... It is more apprpriate than AppleScript and other normal user scripting tools...

  63. WinRunner by jishak · · Score: 2, Informative

    My company uses WinRunner for Windows GUI testing. I know that Mercury Interactive which makes WinRunner and LoadRunner another GUI Testing utility creates Unix version of their software in addition to the Windows versions. I don't know about Mac though.
    Mercury Interactive
    Hope that helps
    Joe

    1. Re:WinRunner by Cola+Junkee · · Score: 1

      Ugh!!

      Don't use WinRunner..

      We use it at work (actually, I just got back from spending the entire day working with the software). It works perfectly until you try to "replay" something you have "recorded". Then all hell breaks loose.

      They use a kind of "property map" which they use to locate GUI objects. Problem is, the GUI map keeps changing on you because the default properties they pick vary from load to load (especially with the Java add-in, IMHO). Also, it can be very tricky (i.e. almost impossible) to find the right set of properties that will uniquely identify your UI objects, and that won't change from load to load, so that you can successfully regress your software.

      Blechhk! Add to that, it costs an arm and a leg.

      If I had to make the decision all over again, I would say skip the UI testing, and do unit testing on your classes instead. Then hire some monkeys (verification types) to sanitize the UI part on a semi-regular basis.

      --

      f u cn rd ths, u r prbbly a lsy spllr.

    2. Re:WinRunner by seeken · · Score: 1

      Agreed. Or hire me, I can get Winrunner to do all sorts of neat things, and I'll gladly spend hours on the clock debugging the scripts every time you change the GUI. $$$$$$$$$

      --

      Surfing the net and other cliches...
      (Who Meta-Meta-Moderates the Meta-Moderators?)
  64. Rational suite by zoftie · · Score: 1

    Rational suite, including tests was a piece of crap when we worked with it. We switched to XP and everyone started having great time coding, due to allowance of concurrent programming...
    If you want to get job done right, I would recommend eXtreeme Programming, over most other ideologies.
    2c,
    p.

  65. If you use Qt... by Anonymous Coward · · Score: 0

    There is a product called KDRunner ( http://www.klaralvdalens-datakonsult.se/Public/pro ducts/kdrunner.html ) available for automating GUI testing of Qt applications. Qt runs on Windows, UNIX and MAC.

  66. ATK for GTK+ apps. by TrixX · · Score: 2

    I'm not completely sure about this, but I think you can use ATK (accessability toolkit) for sending events and getting widget contents to GTK apps. That works only onn GTK2, though, so perhaps it's not helpful to you, but at least I think the functionality is there.

  67. AppleScript doesn't do what he wants by Trepidity · · Score: 2

    AppleScript interfaces directly with the program at a lower level than the GUI -- it's essentially an alternate method of controlling the app, plugging into the same API as the GUI widgets do. This tests the app and everything below that, but it's not exactly the same as actually testing through the GUI itself, since you're bypassing it.

    1. Re:AppleScript doesn't do what he wants by Arker · · Score: 2

      Actually I believe it does have calls to do UI-level actions - mouse clicks for instance.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
  68. Gerd? by Gerald · · Score: 1

    Tim Janik came out with a utility called Gerd a while back that lets you script GTK+ applications. It appears to have been abandoned at version 0.0.3, however.

  69. Use VNC and your current testing setup! by Anonymous Coward · · Score: 0

    Just install a VNC server on each of your Mac or Linux SUTs. Your test host can connect to each box using a VNC client.

    This way you don't have have your developers learn a new environment, and one testing host can test multiple systems.

  70. rfbmacro/rfbproxy by Anonymous Coward · · Score: 0

    There are a couple of apps called rfbmacro and rfbproxy, which use the protocol RFB used by VNC.

    You'll have to search around for a link (a brief search on Google doesn't reveal much).

    From what I remember, these apps are *nix based, but someone on the VNC mailing list once said they got them to work on Win32 via Cygwin.

    Basically you record a VNC session, and then can play it back ad nauseam. There are VNC servers/clients for a good many platforms, including OS X, Windows, and *nix.

  71. Virtual User (Classic Mac OS) by kimota · · Score: 1

    This may be off topic in that you specified Mac OS X. If so, sorry! Anyhoo, Apple offered for the Classic Mac OS a developer tool called "Virtual User," which as I understand it does what you're asking for, and for all I know might just work on a Carbon application. It's available at
    ftp://ftp.apple.com/developer/Tool_Chest/Testing _- _Debugging/Virtual_User_Tools/

    Hope that helps!
    --Kimota

    --
    Who moderates the meta-moderators?
  72. Pounder and Abbot by Anonymous Coward · · Score: 1, Informative

    Can be used to create these sorts of scripts:

    http://sourceforge.net/projects/pounder
    http:// sourceforge.net/projects/abbot

  73. Bad Mojo by Principal+Skinner · · Score: 1

    BTW, can you explain the bit where Mojo typed "Pray for Mojo"? It didn't make enough sense to me for it to be worth having the pet shop owner go inside, get a keyboard, and wait for the monkey to type that, so I figured it must be a reference to something I don't know about.

    --
    one hundred twenty
    is just enough characters
    to write a haiku
  74. at-poke by Anonymous Coward · · Score: 0

    at-poke can do this for gtk+-2.0 (maybe also for other libs using atk, not sure)
    at-poke README
    at-poke in GNOME CVS

  75. Idea: by minh7749 · · Score: 1

    Use slashdotters. They can't bring anything to its knees.

  76. Re:Slashdot math is at it again"Think Different" by t0qer · · Score: 2

    No this is what apple means to
    "Think Different" :P

    --toq

  77. good old macos pushevent by Anonymous Coward · · Score: 0

    Brings back memories..
    I was once hacking pascal apps for the old macintosh toolkit API.. and noticed the app event queue had a method that you could use to insert synthetic events. The documentation on it (PushEvent(?) or something) said it was intended for automated testing. So, what I did was just fill event records with random numbers and left it pounding the queue overnight. In the morning, if the app had crashed, the last event was recorded in a file and you could check it out.

  78. *nix and Linux running X11 by SignoffTheSourcerer · · Score: 1

    There shouldn't be much of a problem doing this under any X environment, as Xevents of any kind are not hard to generate.

    --
    Ordo Militum Unix.
  79. Hivemind! (Re:It's called freshmeat and google.) by Anonymous Coward · · Score: 0

    A sci-fi writer had an interesting opininion a while ago;
    The computer systems of today are just too complex to be kept working without the Internet. What is the Internet? Slashdot, sourceForge, newsgroups, e-mail, irc? Groupmind!

    Prepare to be assimilated. Perhaps you already have.

  80. NO! by Anonymous Coward · · Score: 0

    I'll assume you're not a tester, because that is an awful way to test an application. Any automated script the realise on X/Y coordinates is going to break. Just don't do it!

  81. X Automation Tools by Anonymous Coward · · Score: 0

    From today's Freshmeat:

    http://hoopajoo.net/projects/xautomation.html

    Might be worth looking into...

  82. Re:Here's a good automatic functional test by gewalker · · Score: 1

    Didn't you even read your own link.

    Beta died a lingering painful death due to inferiorty in that it used a 1-hour playback time when VHS was two hours. You could not record 1 whole movie on a Beta tape, whereas most movies could be recorded on the 2-hour VHS formet.

    Pricing was probably an issue (Beta was usually a little more expensive), as well as luck and yes, even marketing. The lawsuit you mention was too little, too late to have killed Beta,

    Technical quality of the playback was better on the Beta -- big deal, read your own link -- the average consumer could not even tell the difference even if their TV was capable of the difference.

    With respect to Apple Mac vs. IBM PC & clones. Price & Applications were why business continued to by PC's. Mac was so hard to program (new and ugly paradigm you know), that it was a year before any real apps came out, and the cost of developing in-house apps was innordinately high.

    A Lamborghini Countach is quite superior in many respects to the Toyota Avalon sitting in my driveway, but it is not a better car for me. Price, Insurance, convenience, capacity, etc. make the Toyota are far better product for me.

    PC outsells Mac
    Toyota outsells Lamborghini
    VHS outsells Beta

    All inferior in some respects, All better for the consumer in ways that mattered to them. I've got a PC, a Toyota, and a VHS recorder. I am not a stupid consumer buying stuff because of fancy commercial brainwash me into buying second-rate junk. I bought stuff them makes sense for me, for my needs. I assume most buyers of Macs, Lamborghinis or Betamax can make the same statement.

  83. Here is a possible solution by dborod · · Score: 1

    Here's an open-sourced, VNC-based user-event recording and playback tool:

    http://www.cs.sfu.ca/~walenste/personal/Research/t heatre.html

    1. Re:Here is a possible solution by pete-classic · · Score: 2

      I don't have moderator points, so I'll just post at 2 below this ;-)

      You could roll your own based on VNC by creating your own VNC client that generates it's own scriptable mouse and keyboard events.

      Then just run the standard server on the tested system.

      -Peter

  84. Testing Tools by Borg#9 · · Score: 1

    I am currently bet testing a Mac OSX program that uses TCP/IP and VNC to test software on any platform with a VNC server. The company is called Redstone Software - www.redstonesoftware.com.

    --
    Do not taunt Happy Fun Ball
  85. its called applescript by cjsteele · · Score: 1

    I know this will get moderated down, but that's mostly because /. is group-think hell and because its redundant, but I have to get this out...

    Basically, if you're responsible for stress testing software on an OS, you should at LEAST have a cursory understanding of the tools available on that OS... meaning, if you don't, how do you expect to really stress test these applications? If you didn't know applescript could do this, then you're stupid and you shouldn't be stress testing applications for anyone on any platform.

    That said... moderators, mod me down.

    "I'm getting moderated down for thinking differently than the rest of the k1dd13z..."

    -C

    --
    "This above all, to thine own self be true" :x!
    1. Re:its called applescript by Anonymous Coward · · Score: 0

      Help! Help! I 'm being repressed.....

    2. Re:its called applescript by cjsteele · · Score: 1

      yup, and you AC's suck. have a spine and let your name be known... don't hide behind the AC monicker.

      you're a gear in the machine.

      -C

      --
      "This above all, to thine own self be true" :x!
  86. Test Mac and Linux with one tool -- Eggplant! by TalkSense · · Score: 1

    Funny you should ask. The company I work for is developing software that I think does just what you asked for. It's a Mac OS X application (codenamed Eggplant) that can test software running on Mac OS X or Linux (or Windows or *nix for that matter).

    Eggplant uses a TCP/IP connection to remotely control the system being tested, under script control. Because it interacts from the user's perspective, by generating mouse and keyboard events and watching what happens on the screen, Eggplant can test anything that has an interface, no matter what language or toolkit it was created with. I think it's pretty cool. And it's the only project I've ever worked on that had a purple vegetable as an app icon!

    Check Redstone Software if you want to join the beta program (happening now). Version 1 should ship soon, but the marketing guys will probably come up with some suitably boring name by then...

  87. scriptit, by microsoft by Anonymous Coward · · Score: 0

    crude, but functional, for wrapping installers and other interfaces