NCVF file structure

Hi,

is there any documentation around the structure of NCVF (coverage files spit out by Natural) or could you release some?

I’d like to parse them myself to get some statistics around Natural programs.

Hi Markus,
sorry but the layout of the Profiler & Coverage files (NPRF, NPRC and NCVF) is internally only. Indeed it is a bit tricky and uses a forward and a standard compression (saving up to 90 % of storage). And it uses codes which requires special interpretation, and other funny stuff …
So even if it would be published, it would not be easy to process it.
But you can use the batch PROFILER READ function to read the NCVF resource file and write the result to a work file which you may then process as needed (if the READ is not already giving you what you want).
See Profiler docu > Using the Profiler Utility in Batch Mode > Evaluating Event Data
BTW, which kind of statistics you would like to see?
On which platform (MF or LINUX) are you working? The Profiler utility works on both but there are some minor differences.
Regards
Lukas

Hi Lukas,

we’re running on Linux.

I want to write a plugin for SonarQube to aggregate the coverage information over the whole codebase after all automatic tests ran. We do this for all our non-Natural projects and would like to do the same quality analysis on Natural, along with other metrics.

The plugin would be written in Java, so I guess I can’t use the PROFILER READ function, but maybe the output of that can help me get a gist on how the compression looks.

Tricky is no problem, I could work with that with a small layout :slight_smile:

There’s already a Jenkins plugin bundled with NaturalONE, maybe the NCVF parsing from it could be taken out into a separate artifact thats released on e.g. maven central? :slight_smile: That way you wouldn’t have to disclose the compression algorithm or open source it but still help us build tooling around Natural.

Cheers!

Markus

I would really recommend that you run the READ job after the coverage. You can write the output as txt or csv. Keep in mind that the output may change in the future (but no change is planned so far).
Just run it and test which information satisfies your needs.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.