How to cloverise entire project and generate db files

Hi ,

I am new to clover and we have licensed version of clover. I have added a profile in my maven pom.xml file with the following line

<plugin>
  <groupId>com.atlassian.maven.plugins</groupId>
  <artifactId>maven-clover2-plugin</artifactId>
  <configuration>
    <jdk>1.7</jdk>
    <generateHistorical>true</generateHistorical>
    <generateHtml>true</generateHtml>
    <!-- <generatePdf>true</generatePdf> -->
    <license><![CDATA[  GIVEN PROPER LICENSE ]]></license>
    <excludes>
      <exclude>**/*-mock-impl/**/*.java</exclude>
    </excludes>
    <properties>
      <clover.cloverDatabase>C:\\Users\\sample\\</clover.cloverDatabase>
      <clover.singleCloverDatabase>true</clover.singleCloverDatabase>
    </properties>
    <contextFilters>property</contextFilters>
  </configuration>
</plugin>

then I have executed following maven commands :

1) mvn clean -U : this command worked fine and is a success

2) when I tried mvn clean clover2:setup install -Dmaven.test.skip=true -Dmaven.clover.singleCloverDatabase=false is not generating clover.db files for me

I want to get functional code coverage for my project, Am I missing something or any steps you want me to add ?

Thanks,

-K

2 answers

0 vote

It seems that the

'<clover.cloverDatabase>C:\\Users\\kyajamanyam\\</clover.cloverDatabase>'

points to a directory instead of a file. Could you try appending 'clover.db' to this path?

Hi Marek,

Thanks for the quick reply.

It didnt work for me :(

I have executed this command mvn clean clover2:setup install -Dmaven.test.skip=true

Regards,

Kiran Y

I have got clover.db files under each package/target/clover/clover.db file.

Creating war files with this intrumented code will give me clover war and non clover war files?

I have got soo many clover.db files and intrumented code , it will be very difficult to add these many files to classpath

Thansk,

Kiran Y

Could you put <cloverdatabase> and <singlecloverdatabase> directly under <configuration> ?

This didnt work.

1) My mistake, sorry. Please use the <singleCloverDatabase> only. Do not use <cloverDatabase>, as described in maven docs:

https://docs.atlassian.com/maven-clover2-plugin/latest/setup-mojo.html#singleCloverDatabase

You will find a database in /target directory of the last compiled module.

2) You wrote that:

I have got soo many clover.db files and intrumented code , it will be very difficult to add these many files to classpath.

Please note that there is no need to add clover.db to a classpath. Instead of this, clover.db must be found by instrumented code (a path to clover.db is encoded in instrumented classes). It can be achieved by:

  • using an absolute path to clover.db or
  • using a relative path + copying clover.db to the same location relative to working directory or
  • providing -Dclover.initstring runtime property (in case when only one database is used) or
  • providing -Dclover.initstring.basedir runtime property (in case of multiple databases)

Hi Marek,

Thanks for the quick reply.

It didnt work for me :(

I have executed this command mvn clean clover2:setup install -Dmaven.test.skip=true

Regards,

Kiran Y

Suggest an answer

Log in or Sign up to answer
Atlassian Community Anniversary

Happy Anniversary, Atlassian Community!

This community is celebrating its one-year anniversary and Atlassian co-founder Mike Cannon-Brookes has all the feels.

Read more
Community showcase
Fadoua M. Boualem
Published Monday in Trello

Using Trello to manage events

As a Jira power user, I was at first doubtful that Trello could benefit my workflow. Jira already uses boards (ones you can customize!), so why would I even need to use Trello?! In this post you will...

504 views 8 9
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you