2012-04-09 10 views
6

セレングリッド2をセットアップしてセレンテストを実行しようとしています。私のテストはより依存しています。私は、私の逐次実行&並列実行をうまく定義しなければなりません。 ref.xmlにbuild.xmlファイルを添付しています。シーケンシャルノード内には、さまざまなターゲットを持つ多くの並列ノードがあります。私はこのbuild.xmlを実行する際に矛盾する問題に直面しています。セレングリッドとアントシーケンシャル+パラレル実行

何度か、第2パラレルノード&のターゲットを拾うことがあります。それはエラーも与えていません。私は冗長モードでantコマンドを実行しようとしましたが、まだantの例外はありません。

この点で誰かが助けてくれたら嬉しいです。

<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> 

事前に感謝
Anjana

+0

の可能重複[アリ - 一つのターゲットは、セレンの自動化のために完了した場合でも、ターゲットの実行を継続する](のhttp:/ /stackoverflow.com/questions/10117370/ant-continue-the-target-execution-even-if-one-target-completes-for-selenium-a) – oers

答えて

1

あなたは、グリッドを使用せずに/とテスト並列に実行することができますQAF (formerly ISFW)を試してみてください。

<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> 
0

それは、build.xmlの中に直接それを行うのではなく、管理者の並列テストにtesngかのJUnitを使用することがはるかに良いです:あなたの場合、以下の設定ファイルで はあなたの要件を満たすことができます。ここ

は良いTestNGのの設定のチュートリアル、Antとセレングリッドです:

http://technologyandleadership.com/six-steps-for-complete-test-automation-with-selenium-grid/

関連する問題