Ruppsn,
For code coverage I use vsinstr and vsperfmon tools inside visual
studio. They output a binary file, but it is rather easy to convert it
to XML using some build in functionality. I then created an XSL file
to display this all out on the dashboard. It is pretty nice as it will
show coverage by assembly, namespace, class, and method.

On Nov 19, 9:43 am, Ruppsn <[EMAIL PROTECTED]> wrote:
> Hello everybody!
> First of all, big thanks for the developers and the community who made
> CCNet to become what it is. Excellent job. However, there are some
> question that arose while implementing CI by means of CCNet in my
> department.
>
> Well, I have the Version 1.4.0.3524 up and running in conjunction with
> subversion; well, I reverted to this version because the latest
> release crashed my SVN (the 'unable to load the output from svn'
> thing); we are using the <devenv> task to spawn our VS2008 solutions,
> that contain among other projects a googletest test project that
> compiles to an executable that is spawned after the <devenv> task with
> the <exec> task. The test outputs its log to a result file in a JUnit/
> NUnit compliant fashion. A <merge> tasks merges these results so that
> it should be displayed by the dashboard (see question two). To the
> biggest extend, I am confronted with setting up CI for unmanaged C++
> projects that are splitted up into projects and libraries like that
> (hypothetical svn trunk structure that is not too far away from
> reality ;-) ):
> svn/trunk/
>    + projects
>           + P1
>           + P2
>           + P3
>           ...
>           + P4
>    + libraries (own stuff)
>           + L1
>           + L2
>           ...
>           + Ln
>
> A typical sceneario of inter-lib/project dependencies is like this (->
> means 'requires' or 'depends on'):
> P1 -> P3 -> L3 +-> L1
> |          |           +->  L2
> |         +-> L1
> |         +-> L2
> +-> L6 -> L9
>        +-> L2
> +-> L3
>
> P2 -> ...
>
> Pn -> ...
>
> Okay, here they go, the questions I have:
> 1) First of all; how do I have to model all these dependencies without
> having a broken integration due to concurrent modifications/builds of
> dependent libs. Well, I read about serialized builds in (http://
> confluence.public.thoughtworks.org/display/CCNET/Integration+Queues).
> Due to that I have currently one big serialized build in one queue
> comprising of all the projects and libraries with priorities according
> to the link above. For this, I simply converted the lib/project
> structure to a DAG and performed a topological sorting. Well, this
> should work, but it's no surprise that this won't scale pretty good,
> right?
>
> 2) For unit-testing, we use the googletest testing lib that allows
> outputting the logs of the tests to a xml file in a JUnit / NUnit
> compatible fashion. Well, this works well in that sense, that the
> tests are executed (calling the <exec> task) and dashboard notifies
> that the tests are passed or failed. However, I do not get any
> information from the build's test in the NUnit details area. Actually,
> do I have to expect some? I think, as long as the googletest
> executable exposes its information in JUnit/NUnit style, this
> information will be reused in the NUnit details area. Am I wrong?
> Likewise, the 'View Statistics' area does not provide any information
> on how much of the tests failed or passed (neither in the 'Detailed
> Data' tab nor in the 'Summarized Data' tab).
>
> 3) Sometimes I'am wondering, if I am the only one who is concerned
> with CCNet, testing unmanaged C++ code and getting Code Coverage
> information for the tests. Unfortunately, NCover, NDepends and finally
> NUnit won't work because we are in a plain unmanaged C++ environment.
> Are there any alternatives or is there anybody out there who can give
> me a hint (or a small example) on how to implement CI under these
> circumstances?
>
> 4) And last but not least; are there nicely designed xslt available
> that pimp my dashboard? Would be nice (and great) if there is (or
> would be) something like a repository where you have some screenshots
> of a customized dashboard along with the xslts provided.
>
> Thanks a lot for your patience and greets,
>  Ruppsn

Reply via email to