Mark Adamcin created SLING-2810: ----------------------------------- Summary: Provide JaCoCo agent servlet to expose code coverage data to HTTP clients during Sling Junit Test execution Key: SLING-2810 URL: https://issues.apache.org/jira/browse/SLING-2810 Project: Sling Issue Type: New Feature Components: Testing Affects Versions: JUnit Core 1.0.8 Reporter: Mark Adamcin
create a simple REST endpoint for the jacoco agent at /system/sling/jacoco.exec to expose: jacoco Agent Status ------------------------------------------------------------------------------------------- HEAD /system/sling/jacoco.exec Content-Type: application/octet-stream 200: jacoco agent is attached and exposed through JMX 404: jacoco agent not found return IAgent.getExecutionData(false) ------------------------------------------------------------------------------------------- GET /system/sling/jacoco.exec Content-Type: application/octet-stream 200: execution data returned as response entity 404: jacoco agent not found Reset execution data and return jacoco.exec file ---------------------------------------------------------------------- POST /system/sling/jacoco.exec [optional param ":sessionId" to set a specific sessionId after reset] Content-Type: application/octet-stream 200: agent was reset (with new sessionId if specified) and prior execution data returned as response entity 404: jacoco agent not found Jacoco instrumentation for OSGi is rather limited in the sense that there is one agent per JVM, and resetting the execution data resets it across the board, which means that concurrent requests to this service on a shared integration test server will need to be restricted during test execution to avoid corrupting coverage data. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira