2012-04-09 5 views
6

Sto provando a eseguire i test di selenio con la griglia di selenio 2 impostata. I miei test sono più dipendenti. Devo definire bene la sequenza parallela di corsa parallela &. Allegando il mio file build.xml per il rif. All'interno del nodo sequenziale ho molti nodi paralleli con obiettivi diversi. Sto affrontando problemi di incoerenza nell'esecuzione di questo build.xml.Selenium Grid con Ant sequenziale + esecuzione parallela

Alcune volte raccoglie gli obiettivi del secondo nodo parallelo & a volte no. Non dà errore anche. Ho provato a eseguire il comando ant in modalità dettagliata, non ottenendo ancora eccezioni ant.

Sarà contento se qualcuno ci aiuta in questo senso.

<target name="startServerRC" depends="startServerhub"> 
     <echo>Starting Selenium Server...</echo> 
     <java jar="${lib.dir}/selenium-server-standalone.jar" fork="true" spawn="true"> 
      <arg line="-port 5555"/> 
      <arg line="-log log.txt"/> 
      <arg line="-firefoxProfileTemplate"/> 
      <arg value="${lib.dir}/ff_profile"/> 
      <arg line="-userExtensions"/> 
       <arg value="${lib.dir}/user-extensions.js"/> 
      <arg line="-role node"/> 
      <arg line="-hub http://localhost:4444/grid/register "/> 
      <arg line="-maxSession 10"/> 
      <arg line="-maxInstances=10"/> 
     </java> 
    </target> 

     <!-- Initialization --> 
    <target name="init" depends="startServerRC" > 
     <echo>Initlizing...</echo> 
     <delete dir="${classes.dir}" /> 
     <mkdir dir="${classes.dir}"/> 
    </target> 

    <!-- Complies the java files --> 
    <target name="compile" depends="init"> 
     <echo>Compiling...</echo> 
     <javac 
      debug="true" 
      srcdir="${src.dir}" 
      destdir="${classes.dir}" 
      classpathref="classpath" /> 
    </target> 

    <target name="CItarget">  
     <sequential> 
      <antcall target="compile"/> 
      <parallel> 
       <antcall target="run"/> 
       <antcall target="run_PSDATA"/> 
      </parallel> 
      <parallel> 
       <antcall target="run_PreData"/> 
       <antcall target="run_DFPPulls"/> 
       <antcall target="run_AdTechPulls"/> 
       <antcall target="run_AppnexusPulls"/> 
       <antcall target="run_FTPPulls"/> 
       <antcall target="run_OASPulls"/> 
       <antcall target="run_GDFPPulls"/> 
       <antcall target="run_FreewheelPulls"/> 
       <antcall target="run_ThirdPartyPulls"/> 
      </parallel> 
      <parallel> 
     <antcall target="run_PostData"/> 
       <antcall target="run_Sales"/> 
      </parallel> 
      <parallel> 
       <antcall target="run_Administration"/> 
       <antcall target="run_E2EPartner360"/> 
       <antcall target="run_Sales"/> 
       <antcall target="run_Finance"/> 
       <antcall target="run_Loaders"/> 
       <antcall target="run_Accounts"/> 
       <antcall target="run_Adops"/> 
      </parallel> 
      <parallel> 
       <antcall target="run_Alerts"/> 
       <antcall target="run_CustomFields"/> 
      </parallel> 
      <antcall target="stop-selenium"/> 
     </sequential> 
    </target> 

Grazie in anticipo
Anjana

+0

possibile duplicato di [Ant - continua l'esecuzione di destinazione, anche se un obiettivo completa per l'automazione selenio] (http://stackoverflow.com/questions/10117370/ant-continue-the-target-execution-even-if-one-target-completes-for-selenium-a) – oers

risposta

1

Prova QAF (formerly ISFW) dove è possibile eseguire test parallelo con/senza uso di griglia. Nel tuo caso seguente file di configurazione può soddisfare le vostre esigenze:

<suite name="Sample Test Automation" verbose="0" parallel="tests"> 
<test name="Set1" > 
    <parameter name="selenium.server" value="server1"/> 
    <parameter name="selenium.port" value="port"/> 

    <!-- group or class or package entry as per testNG standard 
    -->  
    <classes> 
    <class name="qualified name of class"></class> 
    </classes>>  
</test> 


<test name="set2" > 
    <parameter name="selenium.server" value="server2"/> 
    <parameter name="selenium.port" value="port"/> 

    <!-- <packages> 
     <package name="package name" /> 
    </packages> 
    -->  
    <classes> 
    <class name="qualified name of class"></class> 
    </classes> 
</test> 

</suite>