2017-04-04 1 views
1

젠킨스를 사용하여 셀렌/자바 자동화 테스트 (테스트 스크립트는 .jar 파일에 패키지 됨)를 예약하고 있습니다.젠킨스 | "시스템에서 지정된 파일을 찾을 수 없습니다"

.jar 파일을 트리거하기 위해 .bat 파일을 생성했으며 젠킨스에서 .bat 파일을 호출합니다.

.bat 파일을 두 번 클릭하여 수동으로 테스트를 실행하면 모든 것이 원활하게 실행됩니다. 내가 젠킨스를 통해 같은 실행하려고하면, 나는 각 테스트 케이스에 대한 다음과 같은 오류가 점점 오전 :

젠킨스가 성공적으로 .bat 파일을 호출 "지정된 파일을 찾을 수 없습니다" jken 콘솔에 표시되는 테스트 사례 이름 (.jar 파일 내에 있음)을 볼 수 있기 때문입니다.

내 Java 코드에서 을 사용하여 내 jar 파일이있는 위치와 현재 데이터가 자동화 프레임 워크를 구동하는 Excel 파일을 나타내는 "현재 디렉토리"를 나타냅니다. .bat 파일도 같은 위치에 있으며 .bat 파일과 젠킨스의 정규화 된 경로를 지정했습니다.

하드 코드 할 수없고 자바 코드에서 ./을 사용해야합니다. 그리고 Windows Server (내 로컬 컴퓨터가 아님)에서이 작업을 실행하고 있습니다.

+0

어쩌면 [this] (http://stackoverflow.com/a/25440709/2861476) 도움이 될 수 있습니다. –

+0

수동으로 실행할 때 어떤 디렉토리에서 실행합니까? '.bat' 파일을 실행하기 전에 Jenkins가 같은 디렉토리로 변경하려고 했습니까? 내 생각 엔이 파일은'.bat' 또는'.jar' 파일이 아닌 다른 파일의 작업 디렉토리 문제입니다. – mrfreester

+0

@mrfreester - 수동으로 젠킨스에서 C :/Desktop/QA 디렉토리에서 실행합니다. 빌드 작업을 구성하고 'windows bat file'을 선택하고 전체 경로 -C :/Desktop/QA/trigger를 지정했습니다.bat 또한 bat 파일에서 PATH 및 CLASSPATH 값을 각각 C : /ProgramFiles/java/jdk1.7 및 C :/Desktop/QA 디렉토리로 설정합니다. –

답변

0

문제점은 Jenkins 설치시 발생했습니다. devops 엔지니어가이 문제를 해결했습니다. 그 안에 Tomcat과 젠킨스를 설치해야했습니다. 그는 "Jenkins가 UI로 설치되면 다른 UI를 열 수 없으므로 젠킨스 용으로 별도의 UI를 만드는 별도의 서버에 .war 파일을 설치해야하며 응용 프로그램 UI (firefox)는 로컬" .

0

은 .bat 파일이있는 현재 디렉토리 경로를 식별하고 시스템 경로 변수에 추가/추가합니다. 일단 완료되면 jenkin이 .bat 파일을 실행하도록 허용하십시오.

+0

어디 경로 변수를 찾을 수 있습니까? 젠킨스에서? 박쥐 파일에서 PATH 및 CLASSPATH 값을 각각 C : /ProgramFiles/java/jdk1.7 및 C :/Desktop/QA 디렉토리로 설정합니다. C :/Desktop/QA에는 내 모든 파일, 박쥐, 항아리가 있습니다. –

0

젠킨스에서 작업 할 때 작업 디렉토리가 다른 문제입니다.

가장 쉬운 수정 : 빌드 단계 대신 Windows 일괄 처리 명령을 실행하십시오. 첫 번째 줄에 cd C:/Desktop/QA/을 입력하면 작업 디렉토리가 로컬 작업과 일치하도록 변경됩니다. 두 번째 줄에는 trigger.bat 또는 C:\Desktop\QA\trigger.bat을 사용하십시오.

더 강력한 수정 : Java 코드에서 다른 파일을 참조 할 때 .\을 사용하고 있습니다. 이것은 기본적으로 현재 디렉토리를 의미하며, 다른 작업 디렉토리에 있으면 원하는 디렉토리가 아닙니다. 대신 look at this question/answer은 작업 디렉토리 대신 .jar 파일이있는 디렉토리를 참조하는 방법을 보여줍니다. 요약하면 다음과 같습니다.

+0

@mrfreester에게 도움을 주셔서 감사합니다. 나는 나를 위해 일하는 다른 대안을 따랐다. –

관련 문제