https://github.com/vassilevsky/abstract-code-coverage
Comprehensive source code coverage format specification
https://github.com/vassilevsky/abstract-code-coverage
coverage format specification standard test-coverage
Last synced: about 2 months ago
JSON representation
Comprehensive source code coverage format specification
- Host: GitHub
- URL: https://github.com/vassilevsky/abstract-code-coverage
- Owner: vassilevsky
- License: mit
- Created: 2018-09-14T12:01:22.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2018-10-12T18:11:10.000Z (over 6 years ago)
- Last Synced: 2025-01-22T08:35:20.249Z (3 months ago)
- Topics: coverage, format, specification, standard, test-coverage
- Language: Makefile
- Size: 8.79 KB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Abstract Code Coverage Format
An open, extensive, [JSON Schema](http://json-schema.org)-specified format of software source code coverage information.
## Features
* JSON as the underlying format
* JSON Schema that fully specifies and describes the format
* Programming language and tool-agnostic format
* Support for branch coverage information
* No need of access to source code to render a nice-looking coverage report## The Schema
The schema is in [abstract-coverage-schema.json](abstract-coverage-schema.json). This is the main artifact of this project.
It is validated agaist the [metaschema](http://json-schema.org/specification.html#meta-schemas) on [Travis](https://travis-ci.org) on every push.Examples are in [examples](examples) directory. They are validated against this schema.
## Implementations
* _Add your own implementation here via a pull request_
## Related projects
In the order of frequency of encounters in my research:
### SonarQube Generic Test Coverage format
Pros:
* XML Schema
* The only coverage format I know of that has an openly available schema. Wow!Cons:
* XML (what year is it?)
* Overly verbose element names (`linesToCover`)
* Poor branch coverage info### Cobertura
Pros:
* Seems to be widely supported
Cons:
* Doesn't have an easily discoverable schema or even an example
### Coveralls
Pros:
* Widely supported
Cons:
* Doesn't have an easily discoverable schema or even an example
### Cover for Bitbucket Server
Pros:
* Compact
Cons:
* Too compact
### CodeClimate
Pros:
* Seems to be widely supported
Cons:
* Doesn't have an easily discoverable schema or even an example
## TODO
* Help OpenCov support this format
* Write an opencov client gem to replace coveralls (which is just not cool to piggyback on)
* Write a renderer to a standalone nice-looking project coverage report
* Port [Makefile](Makefile) to Windows