2013-01-17 2 views
0

ANT를 사용하여 Selenium Grid 인스턴스를 시작하려고합니다. 여기에있는 응답을 사용하여, How can I run Selenium 2 Grid from an Ant build?, 나는 성공적으로Selenium Grid/Sauce Labs Plugin/Ant 설치

<project name="selenium-grid" default="launch-hub" basedir="."> 
    <property name="selenium.version" value="2.28.0"/> 
    <property name="sauce.version" value="1.0.8"/> 
    <path id="selenium.classpath"> 
    <pathelement path="${basedir}/"/> 
    <fileset dir="${basedir}/"> 
     <include name="selenium-server-standalone-${selenium.version}.jar"/>  
     <include name="sauce-grid-plugin-${sauce.version}.jar"/> 
    </fileset> 
    <pathelement path="${java.class.path}/"/> 
    </path> 
    <target name="launch-hub" 
      description="Launch Selenium Hub"> 
    <java classname="org.openqa.grid.selenium.GridLauncher" 
      classpathref="selenium.classpath" 
      fork="true" 
      failonerror="true">  
     <arg value="-role"/> 
     <arg value="hub"/>  
    </java>  
    </target> 
</project> 
ant launch-hub

가 이동 다음 build.xml 파일을 사용하여 그리드를 시작할 수 있었다, 나는 셀레늄 그리드와 소스 랩 그리드 플러그인을 사용하고 싶습니다 이는 여기에서 찾을 수 있습니다 : 위키 다음 https://github.com/rossrowe/sauce-grid-plugin/wiki , 나는

java -cp selenium-server-standalone-2.25.0.jar;sauce-grid-plugin-1.0.7.jar org.openqa.grid.selenium.GridLauncher -role hub -servlets com.saucelabs.grid.SauceOnDemandAdminServlet,com.saucelabs.grid.SauceOnDemandConsoleServlet

가 지금은 대상에 추가하여 소스 랩 서블릿을 통합하려는 DOS

에서 다음 사용하여 내 윈도우 머신에 두를 시작할 수 있습니다 "launch- 허브 "

 
launch-hub: 
    [java] 17 janv. 2013 10:58:40 org.openqa.grid.selenium.GridLauncher main 
    [java] INFO: Launching a selenium grid server 
    [java] 17 janv. 2013 10:58:50 org.openqa.grid.web.utils.ExtraServletUtil createServlet 
    [java] ATTENTION: The specified class : com.saucelabs.grid.SauceOnDemandAdminServlet cannot be instanciated com.sau 
celabs.grid.SauceOnDemandAdminServlet 
    [java] 17 janv. 2013 10:58:50 org.openqa.grid.web.utils.ExtraServletUtil createServlet 
    [java] ATTENTION: The specified class : com.saucelabs.grid.SauceOnDemandConsoleServlet cannot be instanciated com.s 
aucelabs.grid.SauceOnDemandConsoleServlet 
    [java] 2013-01-17 10:58:50.806:INFO:osjs.Server:jetty-7.x.y-SNAPSHOT 
    [java] 2013-01-17 10:58:50.866:INFO:osjsh.ContextHandler:started o.s.j.s.ServletContextHandler{/,null} 
    [java] 2013-01-17 10:58:50.876:INFO:osjs.AbstractConnector:Started [email protected]:4444`enter code here 

셀레늄 그리드 시작 : 여기 여기

ant launch
을 사용하고 재발 양념 연구소 "서블릿"에 대한 인수 (미안해하는 데 문제가 실제 코드를 게시)

arg value="-servlets" 
arg value="com.saucelabs.grid.SauceOnDemandAdminServlet,com.saucelabs.grid.SauceOnDemandConsoleServlet"

창문에 의해 반환 된 오류입니다 서블릿이 없으므로 Saucelabs에 액세스 할 수 없습니다.

아이디어가 있습니까?

업데이트 소스 플러그인 1.0.7을 사용하여 작동 시켰습니다. 1.0.8

답변

1

내가 여분의 인수로 build.xml 파일을 사용하여 소스 그리드 플러그인을 성공적으로 실행하는 그리드 서버를 얻을 수 있었다, 예를 들어

<project name="selenium-grid" default="launch-hub" basedir="."> 
    <property name="selenium.version" value="2.25.0"/> 
    <property name="sauce.version" value="1.0.8"/> 
    <path id="selenium.classpath"> 
     <pathelement path="${basedir}/"/> 
     <fileset dir="${basedir}"> 
      <include name="selenium-server-standalone-${selenium.version}.jar"/> 
      <include name="sauce-grid-plugin-${sauce.version}.jar"/> 
     </fileset> 
     <pathelement path="${java.class.path}/"/> 
    </path> 
    <target name="launch-hub" 
      description="Launch Selenium Hub"> 
     <java classname="org.openqa.grid.selenium.GridLauncher" 
       classpathref="selenium.classpath" 
       fork="true" 
       failonerror="true"> 
      <arg value="-servlets"/> 
      <arg value="com.saucelabs.grid.SauceOnDemandAdminServlet,com.saucelabs.grid.SauceOnDemandConsoleServlet"/> 
      <arg value="-role"/> 
      <arg value="hub"/> 
     </java> 
    </target> 
</project> 

셀레늄보고에서 버전 없음 갈 그리드 코드, ClassNotFoundException이 발생했을 때 빌드 출력에 나타난 오류가 발생했습니다 ... 소스 - 그리드 - 플러그인 jar 파일이 $ {basedir}에 있는지 확인할 수 있습니까?

+0

빠른 응답을 보내 주셔서 감사합니다. 불행히도 이것은 나를 위해 작동하지 않았다. 네, 양쪽 항아리가 $ {basedir}에 있습니다. Selenium 독립 실행 형 서버 2.25.0을 사용하여 NullPointerException이 발생했습니다. 2.28.0을 사용하면 Grid가 서블릿을 뺀 것을 시작할 수 있습니다 : -/ – Scott

+0

좋습니다. -debug 플래그 (예 : ant -debug)로 ant를 실행하고 로그 출력을 첨부 할 수 있습니까? 내 환경에서는 다음을 포함합니다 : _Executing ..snip..java 'with arguments : '-classpath ' '/ Developer/workspace/sauce-grid-plugin :/Developer/workspace/sauce-grid-plugin/sauce -grid-plugin-1.0.8.jar : /Developer/workspace/sauce-grid-plugin/selenium-server-standalone-2.25.0.jar : 'org.openqa.grid.selenium.GridLauncher' '-servlets ' 'com.saucelabs.grid.SauceOnDemandAdminServlet, 형식 : –

+0

는 소스 그리드 플러그인 [에 문제를 제기 주시기 바랍니다에 대한 com.saucelabs.grid.SauceOnDemandConsoleServlet ' '-role ' 'hub'_ (사과 이슈 등록] (https://github.com/rossrowe/sauce-grid-plugin/issues) too –