2013-03-14 3 views
0

Pax 시험을 사용하여 Karaf에서 CXF REST 서비스를 테스트하고 있습니다. 테스트는 거의 항상 내 컴퓨터에 장애없이 실행됩니다. Jenkins에서 실행될 때 (Maven 빌드 아래) 일반적으로 실패합니다. 실패는 예측할 수없는 것처럼 보입니다. 실패 도중받은 오류는 Karaf 명령을 실행하려는 시도를 처리합니다. 명령은 다음 코드에 의해 실행됩니다Pax 시험 테스트가 가끔 실패합니다

def byteArrayOutputStream = new ByteArrayOutputStream(); 
    def printStream = new PrintStream(byteArrayOutputStream); 
    CommandProcessor commandProcessor = getOsgiService(CommandProcessor.class); 
    CommandSession commandSession = commandProcessor.createSession(System.in, printStream, System.err); 
    commandSession.put("APPLICATION", System.getProperty("karaf.name", "root")); 
    commandSession.put("USER", "karaf"); 
    commandSession.execute(command) 

이 내가 테스트 설정 방법에 실행하려고하고있는 명령은 다음과 같습니다

org.apache.felix.gogo.runtime.CommandNotFoundException: Command not found: features:addurl

:

'features:addurl mvn:org.apache.cxf.karaf/apache-cxf/2.7.2/xml/features', 'features:install http', 'features:install cxf' 

이 예외입니다

가끔 Karaf가 올바르게 시작되지 않고 이러한 명령을 처리 할 수없는 경우가 있습니다. 이 오류는 Karaf 명령에 따라 다른 테스트에서 임의로 발생합니다. 내 컴퓨터에서는 부하가 심할 경우 발생할 가능성이 더 큽니다.

카라프가 이러한 방식으로 행동하게하려면 어떻게 될까요? 이러한 오류가 발생하지 않도록 방지하는 방법은 무엇입니까?

이 있습니다

답변

0

는 또한,

마이클 감사 인원 - 시험 - karaf, 그것은 또한 구성에서 사용할 수있는 기능 설치 프로그램이 있습니다. "수동"설치를 고수하려면 기능 서비스가 미리 설치되어 있어야합니다. 예를 들어 서비스를 주입 시키십시오.

+0

필자는 pax-exam-karaf 기능 설치 프로그램에 문제가있어 수동 기능 설치시 pax-exam-karaf를 사용합니다. 기능 서비스를 기다리고 CommandProcessor 서비스로 명령을 실행하는 대신 새로운 기능을 설치하기 위해 서비스를 사용할 수 있다는 말씀입니까? – jdgilday

+0

네, 그게 가능할 수도 있습니다 :) –

+0

pax-exam-karaf 기능 설치 프로그램과 관련하여 어떤 종류의 문제가 있습니까? 이것은 일반적으로 매력처럼 작동합니다. 카라프는 그 자체로 시험을합니다. –

관련 문제