We have a large application framework here at work that I work on. It's made up of mostly perl scripts and modules (with a mixure of code in other languages, but that's not important now). We have an extensive set of test scripts and want to measure the Perl code coverage. One consequence of the architecture we implemented is that many of the perl scripts are symlinked in multiple locations (each application within the framework has its own code space and code that needs to be shared among different apps is placed in one application's space and symlinked into all the other apps' spaces).
I get what looks like accurate coverage measures out of runs of the full test set for those scripts that are *not* symlinks. For the scripts that are symlinked a few of them seem to give some reasonable coverage data, but most of them show no coverage data at all. They are listed in the HTML report pages, but all usage stats columns, stmt, bran, cond, sub, and time (not doing pod coverage), all say 'n/a'. Some of these scripts are quite large and are surely used many times within the test set but it is essentially reporting 0% coverage which is just not possible.
So it looks like the system is getting confused when you run the same script via different paths (via symlinking).
Is this a known issue and is there any kind of workaround?
In the interest of full disclosure (as much as my company will allow anyway) I did modify Devel::Cover so that it can operate in a parallel grid computing system.
Update: typos fixed.
--DrWhy
"If God had meant for us to think for ourselves he would have given us brains. Oh, wait..."
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.