Question

I've a server running a proprietary language on which I'm able to run "unit tests" in this language. I cannot install a Hudson slave on this machine, but would like to have these tests results appearing in a job of hudson (to have at least a monitoring of the code quality for this server code). I'm currently trying to use web services to get the results and store them in Hudson workspace, but I do fear it is not the right solution. What solutions can you advice me ?

Was it helpful?

Solution

I finally have gotten through the web services path, although it was not easy. There are some steps in this path

  1. I created a maven mojo with groovy (see GMaven for more infos) which, using groovyws, called a web service that, from tests results, creates the junit report.
  2. Armed with this mojo, I created a maven project that called the web service and stores the junit.xml file in an output folder
  3. Finally, i created in hudson a maven job for this project and called it regularly. Thanks to junit reporting integration in maven builds, my tests results are visible as a graph in Hudson and user can drill down to failing tests.

OTHER TIPS

Not sure if these are possible but...

Maybe one option is when the build job finished execute a second build target or script to scp the test results from the remote server to the local build server so they appear in hudson

Or if the platform allows

Map a directory on the remote machine to the local file system by using something like sshfs etc

karl

Yup, you can scp or whatever the results (in junit xml format) to the current workspace dir using a script task. Then have a "Publish JUnit test result report" post-build task & point it at the copied-in files.

Obviously if it's not in junit-compatible format you'll have to convert it.

Sounds like you're on the right path though

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top