Automation Tool


#1

I am currently manually testing an application that is written in Juce. The application is used both on Macs and PCs. I would like to start converting my manual tests to automated scripts. I have tried using QTP, but QTP doesn’t recognize the Juce objects. Is there an automation tool that anyone has used that supports Juce objects and both Macs and PCs?

Thanks,


#2

I’m not quite sure what you mean by “automation tools” for testing.

I have personally had excellent success with Google’s gtest unit test framework for unit testing, which runs very well on the Mac and the PC - but that isn’t going to cover the GUI.

Are you wanting something that “automatically presses the buttons and sees what happens?” My suggestion to you - give it up. :smiley: I’m pretty sure there are no such tools that target Juce GUI components so you’d have to make one - but my fairly extensive experience with such systems is that they’re a real pain to use - the tests keep breaking when you make minor cosmetic changes, and when a test does break it tells you next to nothing about what happened to your code.

There’s the additional issue that these tests end up taking a reasonable amount of real time, and usually completely take over your mouse and keyboard, so you can’t get any work done.

My solution is to have an extensive battery of unit tests that I run after each change, no matter how small (because they take about two minutes even if I have to recompile the world, and I can put them in the background and check email). Before I check into the repo, I build and start up the application to see I haven’t made some gross error but that’s it. I don’t branch or tag until I’ve done heavier testing, but I do that very rarely.

Some people find unit tests boring but would you rather spend an hour writing a test, or two hours debugging the code? (and in fact, the ratio of “useful unit tests::time saved debugging” is generally greater than 2:1 in my experience!)


#3

Hi All,

 

Let me again try on the many time asked question again, As we know we don't have any tool that can help Juce UI automation testing. 

But if one has to write UI automation testing for juce in Application inside where all the objects are known and can be used to call needful callbacks, What would be right way to implement and if any one has done any steps on this direction please guide.

I would request Jules to say something if he has any thoughts of making UI testing inside Juce application, Please brief us on it.

 

Thanks.


#4

I would request Jules to say something if he has any thoughts of making UI testing inside Juce application, Please brief us on it.

My thoughts are that it's probably very a tricky thing to automate! I'm not really familiar with what other tools (if any) are out there to do it. Just faking a few mouse moves and clicks is easy to do, but writing tests that decide whether the correct result happened sounds like a bit of a nightmare to implement.


#5

Just faking a few mouse moves and clicks is easy to do, but writing tests that decide whether the correct result happened sounds like a bit of a nightmare to implement.

Yes you are right, most I want is to record users mouse moves and component handles. That seems kind of fine. Let's see will post my effort if it's fruitful .

Thanks