Automated Unit-Tests triggered from SVN

Do you guys have experience in automated Unit-Tests? Any tool that works with SVN?

So whenever a source file is committed, then the tests that are associated with it should be compiled and run for different platforms.

I'm not asking for suggestions or help on how to write it on our own.

If you guys know of such a tool, it would just be great :)


Thanks in advance,
ike
LVL 20
ikeworkAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

evilrixSenior Software Engineer (Avast)Commented:
We use Hudson.

http://hudson-ci.org/
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
ikeworkAuthor Commented:
Great thanks Rix :)

Does it support different compilers and platforms?

Are the tests triggered by SVN-commits or do you make tests daily, weekly or so?
0
evilrixSenior Software Engineer (Avast)Commented:
>> Does it support different compilers and platforms?
It's a framework that can be used to automate stuff, we use it for java and C++ automated Unit testing. I never set it up so I don't know the ins and outs but it works fine for us.

>> Are the tests triggered by SVN-commits or do you make tests daily
That's how it works for us... it triggers based upon the branch IIRC.
0
HTML5 and CSS3 Fundamentals

Build a website from the ground up by first learning the fundamentals of HTML5 and CSS3, the two popular programming languages used to present content online. HTML deals with fonts, colors, graphics, and hyperlinks, while CSS describes how HTML elements are to be displayed.

phoffricCommented:
I was looking into Parasoft (whose C++ Ensure++ utility has saved a couple of projects), but then I left the company. Given the quality of Ensure++, and their staying power in industry, I thought they might be a good way to go.
    http://www.parasoft.com/
    http://www.parasoft.com/jsp/products/cpptest.jsp

Another project used VectorCast. One of the project leads explained that now it would take him 2 hours to configure anyone's system; but initially it took a few weeks to go through the learning curve.
    http://www.vectorcast.com/
   http://www.vectorcast.com/software-testing-products/c++-unit-testing.php

Both have different (but expensive) licensing structures. Maybe you can negotiate the degree of unbundling their packages to get just what you need. (We didn't get to the negotiating phase when I left.)
0
ikeworkAuthor Commented:
Thank you for the links phoffric, I'm gonna check them :)

Currently hudson looks pretty much like what we need. I'm gonna let it open a while to see if there is more input.

Thanks guys so far :)
0
phoffricCommented:
Re: the products listed in http:#28832913. Parasoft, in particular, provides excellent support. I have heard of no dissatisfaction from others with VectorCast support. So, if support is needed, then consider Parasoft.
0
evilrixSenior Software Engineer (Avast)Commented:
phoffric,

Just to clarify, it was Ike who closed this not me. My original recommendation was based on his comment in http:#28864683.

-Rx.
0
phoffricCommented:
thanks for clarifying.
paul
0
ikeworkAuthor Commented:
Hi phoffric,

sorry I caused some confusion here. I closed the question myself selecting evilrix's answer (http:#28800759) because I need a system that is

1) triggerable from an SVN commit. That is the major requirement. Depending on the commited source-file there shall be specific tests associated with it.
2) works for multiple platforms. Hudson works with msbuild, makefiles, code-warrior-projects and a lot of other build systems, just perfect for us.

After an SVN-commit Hudson can start the compilation for different platforms and start associated unit-tests for that particular source-file at those platforms.
The background is that we develop a game-engine that is supposed to run on multiple platforms: PS3, PC, XBox360 and Wii.
Whenever we do a code-change it becomes impossible to build and test all necessary source-files without such a system.
All I read about Hudson sounds like it can do this job pretty well. And certainly it helps to know that last.fm uses it too :)

Please dont take it like I dont appreciate your answer, it's very much appreciated. But Hudson just convinced me :)

Thanks for all your efforts

ike
0
evilrixSenior Software Engineer (Avast)Commented:
ike,

Thanks for taking the time to clarify that.

phoffric,

Please accept my apologies if, between us, Ike and I cause you any confusion. That was not our intention. We should have taken more time to clarify closure for you.

For future reference, as you may find this useful to know, you can tell if a ZA or Mod forced a question closed as the status in the question history is set to "PAQ:forced" and not just "PAQ".

Here is an example of each, with the non-forced one being this one.

I hope that makes sense but, as always, do feel free to ask if you need any further clarification.

Best regards,

-Rx.


Date		Points	Title					Activity Type	Status		Zone
----------------------------------------------------------------------------------------------------
06/05/10	500	Automated Unit-Tests triggere…		Comment		PAQ		C++
22/09/09	0	Finding 3D coordinates of object	Administrative	PAQ:Forced	Java

Open in new window

0
evilrixSenior Software Engineer (Avast)Commented:
>> For future referenceAlso note, had I done that I'd not be a ZA any more :)
0
phoffricCommented:
:)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C++

From novice to tech pro — start learning today.