Support for server-side JUnit tests, injected in a running Sling instance -------------------------------------------------------------------------
Key: SLING-1963 URL: https://issues.apache.org/jira/browse/SLING-1963 Project: Sling Issue Type: Improvement Reporter: Bertrand Delacretaz Assignee: Bertrand Delacretaz I've been working on a prototype JUnit extension framework [1] that allows JUnit tests to be injected in a Sling instance, and executed via a test runner servlet. Tests are not yet OSGi-aware in the first prototype, but they are dynamically injected as exported classes in a bundle that points to them with a Test-Package header. Apart from that they are 100% normal JUnit3 or 4 tests. Next step is to use annotations to inject services in the tests, I'm thinking of something like @TestReference SlingRepository repository And maybe @Test @OptionalTest(requiredService=repository) public void someTest()... which would ignore the test if the repository service is not present. The prototype consists of two bundles: "extension" which is the test detection and runner services, and "testbundle" which provides a few example tests. To play with it, install the two bundles and access the test servlet at /system/sling/junit/ [1] http://svn.apache.org/repos/asf/sling/whiteboard/bdelacretaz/junit -- This message is automatically generated by JIRA. - For more information on JIRA, see: http://www.atlassian.com/software/jira