views:

1151

answers:

8

I'm interested in UI testing a client only Java application. What is the most popular framework for doing so? What is your recommended framework? Also, why doesn't Selenium do this (or does it)? It seems to me that anything that can test a web app should be able to test a windows app.

+3  A: 

We use TestComplete.

Anton Gogolev
+1  A: 

The reason Selenium can't do this is that it uses Javascript running in the web browser to do the testing. It simulates clicking buttons, entering data, etc via Javascript. If Javascript is disabled, it won't work. And since Swing/AWT apps don't have Javascript, Selenium won't work on them, either.

Grimarr
+1  A: 

Selenium is JavaScript based Framework so can only run on things that can execute JavaScript. Browsers do this natively.

As far as I am concerned there isn't really a Testing Framework that is comparable to Selenium on the desktop because it is quite hard to write a framework that hooks into the OS as natively as Selenium Hooks into the Browser. Popular, not necessilary best, are QTP, SilkTest, TestComplete

AutomatedTester
The link to TestComplete is broken. Here is one that works: http://www.automatedqa.com/products/testcomplete/
fixed my link. I took that one from google search
AutomatedTester
+2  A: 

Try the Abbot Java GUI Test Framework.

Bill the Lizard
+1  A: 

uispec4j is an open-source alternative. I haven't tried it yet, though. (I'm currently collecting lists of things to try as well, so thanks for asking the question!)

Jill Renee
+4  A: 

Try FEST framework. This is what was previously known as Abbot, if I'm not mistaken. I use this for automated testing and it seems to be very simple and convenient. Simple things are made easy and complex things are not a rocket science there. I considered UISpecj4j, but it didn't suite me, because there is no technical possibility to test Drag'n'Drop while it's a must. Besides it's quite difficult to develop tests when you don't actually see what's happening (UISpec4J uses fake, invisible look'n'feel)

The only thing is making troubles in FEST (also, by design) - it grabs a mouse and doesn't let you do anything while it running a test.

wax
+1  A: 

The answer is: "Mercury winrunner", which was hugely popular in the late 90s, and which is probably still widely used for win apps.

Not sold as such anymore, but if I'm not mistaken now available as HP QuickTest Professional. See the wikipedia page on HPQTP.

Kaka Woef
+1  A: 

If you have Visual Studio 2010, you could also use the newly introduced Visual Studio UI Automation Testing (also known as Coded UI). It's a bit like using Selenium with an ui-map.

Adrian Grigore