Я хочу написать несколько модульных тестов, которые запускаются в Adobe CQ 5.4.Я делаю то, что описано в этой статье, для тестирования в CQ:
http://jtoee.com/2011/09/799/
Однако после создания класса модульного теста в моем коде Java он не будет компилироваться в CRXDEпотому что он не может разрешить пространства имен org.junit.Я установил и активировал пакет JUnit в Felix, как описано (Apache Sling JUnit Core), но я предполагаю, что мне нужно сделать еще кое-что, чтобы этот активный пакет Felix был найден в CRXDE.Пакет Феликса в экземпляре CQ5, к которому я подключен, показывает эти экспортированные пакеты:
junit.framework,version=4.8.2
org.apache.sling.junit,version=1.0.7.SNAPSHOT
org.apache.sling.junit.annotations,version=1.0.7.SNAPSHOT
org.junit,version=4.8.2
org.junit.matchers,version=4.8.2
org.junit.rules,version=4.8.2
org.junit.runner,version=4.8.2
org.junit.runner.manipulation,version=4.8.2
org.junit.runner.notification,version=4.8.2
org.junit.runners,version=4.8.2
org.junit.runners.model,version=4.8.2
В этом примере кода модульного теста, приведенном ниже, последние три оператора импорта «не могут быть разрешены».
import org.apache.sling.api.resource.*;
import org.junit.*;
import org.junit.runner.*;
import org.apache.sling.junit.annotations.*;
@RunWith(SlingAnnotationsTestRunner.class)
public class MyUnitTest {
public ResourceResolver getResourceResolver() {
try {
return getResourceResolverFactory().
getAdministrativeResourceResolver(null);
} catch (LoginException e) {
fail(e.toString());
}
return null;
}
}
Насколько я понимаю, новичок в OSGI, установленный в Felix, должен быть доступен для ссылок в моих классах Java с использованием CRXDE, но этого не происходит для комплекта JUnit, который я установил.Почему бы и нет?Что мне нужно сделать, чтобы CRXDE нашел ссылку на пакет OSGI и скомпилировал в CRXDE?