2013-05-21 16 views
9

システムにグリッドを設定し、テストスクリプトを作成しました。特定のOSとブラウザでテストを実行できますが、すべてのOSとすべてのブラウザを同時に実行するわけではありません。ここに私がしたことがあります。設定されたOSで一度に実行できるように設定する方法を教えてください。私のスクリプトは、Javaを使用してテストの実行JavaとTestNGを使用して、WebDriverを使用して異なるOSとブラウザで同時に実行

は以下の通りです:

import java.net.MalformedURLException; 
import java.net.URL; 
import org.junit.AfterClass; 
import org.openqa.selenium.*; 
import org.openqa.selenium.remote.DesiredCapabilities; 
import org.openqa.selenium.remote.RemoteWebDriver; 
import org.testng.annotations.*; 

public class GridWithWebdriver { 

    public WebDriver driver; 

    @Parameters({"browser"}) 
    @BeforeClass 
    public void setup(String browser) throws MalformedURLException { 
     DesiredCapabilities capability=null; 

     if(browser.equalsIgnoreCase("firefox")){ 
      System.out.println("firefox"); 
      capability= DesiredCapabilities.firefox(); 
      capability.setBrowserName("firefox"); 
      capability.setPlatform(org.openqa.selenium.Platform.ANY); 
      //capability.setVersion(""); 
     } 

     if(browser.equalsIgnoreCase("iexplore")){ 
      System.out.println("iexplore"); 
      capability= DesiredCapabilities.internetExplorer(); 
      capability.setBrowserName("iexplore"); 
      capability.setPlatform(org.openqa.selenium.Platform.WINDOWS); 
      //capability.setVersion(""); 
     } 

     driver = new RemoteWebDriver(<span class="IL_AD" id="IL_AD11">new URL</span>("http://localhost:4444/wd/hub"), capability); 
     driver.navigate().to("http://google.com"); 

    } 

    @Test 
    public void test_first() throws InterruptedException{ 
     Thread.sleep(3000); 
     WebElement search_editbox = driver.findElement(By.name("q")); 
     WebElement search_button = driver.findElement(By.name("btnG")); 
     search_editbox.clear(); 
     search_editbox.sendKeys("first"); 
     search_button.click(); 
    } 

    @Test 
    public void test_second(){ 
     WebElement search_editbox = driver.findElement(By.name("q")); 
     WebElement search_button = driver.findElement(By.name("btnG")); 
     search_editbox.clear(); 
     search_editbox.sendKeys("second"); 
     search_button.click(); 
    } 

    @AfterClass 
    public void tearDown(){ 
     driver.quit(); 
    } 
} 

Testng.xml:

<suite name="Selenium <span class="IL_AD" id="IL_AD7">Grid with</span> webdriver" verbose="3" parallel="classes" thread-count="2"> 
    <test name="Selenium Grid Demo"> 
    <parameter name="browser" value="iexplore"/> 
    <classes> 
     <class name="tests.GridWithWebdriver"/> 
     <class name="tests.GridWithWebdriver1"/> 
    </classes> 
</test> 
</suite> 
+0

Selenium-GridなしでWebDriverでFF、Chrome、IEで同時にテストを実行できますか?詳細は、私はテスト "ログイン"があります。 Firefox、Chrome、IEで同時にこのテストを実行したい。これどうやってするの? –

答えて

4

アディティア、

異なる、異なるまたは同一のシステム上で並列テストを実行するためのあなたのコード(testng.xml)は以下のようにすべきである:

TestNGの。xml

<!DOCTYPE suite SYSTEM "Http://testng.org/testng-1.0.dtd"> 
    <suite name="My Sample Suite" verbose="3" parallel="tests" thread-count="2"> 


     <test name="Run on Firefox"> 
     <parameter name="mybrowser" value="firefox"/> 
     <parameter name="myip" value="http://172.16.10.119:5566/wd/hub"/> 
     <classes> 
      <class name="testcases.Login"/> 
     </classes> 
    </test> 
    <test name="Run on Chrome"> 
     <parameter name="mybrowser" value="chrome"/> 
     <parameter name="myip" value="http://172.16.10.106:5567/wd/hub"/> 
     <classes> 
      <class name="testcases.Login"/> 
     </classes> 
    </test> 
    </suite> 

here i am trying to acess one linux(ttp://172.16.10.119:5566) and one mac(http://172.16.10.106:5567) and sending its ip and browser as a parameter. To run it parallel i have mentioned in my <testsuite> tag as parallel="tests" thread-count="2" 

あなたは今、かなり明確になることを願っています。

0

テスターのアプローチ:

  • テストが独立した.jarファイルとして実行可能であることを確認します。つまり、実際にはテストは@Testではなく、一部のメソッドまたはコードがmainのメソッド
  • のプロフェッショナルの場合、同じハブに対してノードを実行します。これは、コンピュータが同じネットワーク上にあり、これらのコンピュータにアクセスできる場合に実行できます。
  • これを行うことができる場合は、あなただけhuibがどこにあるか、それを言って、二回.jarファイルを実行し、これを行うことができない場合は、ノードが自動的に
  • 割り当てられます、あなたはそれぞれのこれらの.jarのファイルを展開する必要がありますコンピュータ(ノード)とそれらを実行します(ほとんどの場合、2人が必要です)

例:

私自身のコンピュータは、ローカルネットワーク内でIP 10.131.7.11を持っています。だから私は、ハブを実行すると、各ノードは、ちょうどこれを行います:

のノードが実行されてたら
java -jar selenium-server-standalone-2.32.0.jar -role webdriver -hub http://10.131.7.11:4444/grid/register -port 7575 -browser browserName=firefox,version=18,platform=WINDOWS 

、私は二回のテストを実行します。ハブは自動的にブラウザを具体的なノードに割り当てます。

開発アプローチ:

  • あなたはマルチスレッドを使用して、二つのスレッドでは、一度テストを実行することができます。まあ

しかし、私はテスター午前以来、私は最初のアプローチを使用して:)そして、私は(自分でテスト:))馬鹿の証拠であるマルチスレッドテストスイートを作成するために私を助けた私たちの開発者と通信しなかった

+0

これは解決策ではありません。これは問題があります。 – Aditya

+0

申し訳ありませんが、男...私が自分で見つけることができる最高のもの... –

0

別の<test>タグを作成し、もう1つのブラウザを2番目のテストのパラメータとして渡します。テストに並行して変更したり、クラスを使用したりすることもできます。また、異なるOSを使用する場合は、xmlから送信されるPlatformパラメータも必要です。

+0

ニハリカ、私は間違っていない場合タグは1つずつ(次々に)実行されます。セレンはすべてのタグを一緒に実行することはありません。あなたが誤解してしまった場合は、私のtestng.xmlファイルを修正して、あなたの答えをはっきりと見えるようにしてください。 – Aditya

+0

suiteタグにparallel = testsを入れることができます。これは、すべてのテストが並行して起動されることを意味します。セレンはテストを実行していない、それはその管理を行うtestngです –

0
package concore; 

import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.net.InetAddress; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.net.UnknownHostException; 
import java.util.ArrayList; 
import java.util.List; 

import net.sourceforge.htmlunit.corejs.javascript.ast.WithStatement; 

import org.apache.commons.io.FileUtils; 
import org.openqa.selenium.By; 
import org.openqa.selenium.OutputType; 
import org.openqa.selenium.TakesScreenshot; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 
import org.openqa.selenium.net.INetAddress; 
import org.openqa.selenium.remote.DesiredCapabilities; 
import org.openqa.selenium.remote.RemoteWebDriver; 
import org.openqa.selenium.support.ui.Select; 

public class ConcurrentTestSMS { 
    public WebDriver dri = null; 
    private File file; 
    private FileOutputStream fos; 
    String error = "http://ip/sspjuly08/Errorpage.aspx"; 
    public long timeBefore; 
    public long timeAfter; 
    public long cal; 
    public int drive; 

    public ConcurrentTestSMS() { 
     // Initializing file object 
     file = new File("D:\\concorentTestingsmsLog.xls"); 

     try { 
      // Creating new file if it doesn't exist 
      if (!file.exists()) { 
       file.createNewFile(); 
      } 
      // Initializing file writer object 
      fos = new FileOutputStream(file); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

    public static String captureScreenshot(RemoteWebDriver drivers, 
      String folder, String fileName) { 
     File screenshotFile = ((TakesScreenshot) drivers) 
       .getScreenshotAs(OutputType.FILE); 
     File targetFile = new File(folder, fileName + ".png"); 
     // File targetFile=new File("D:\\alagar.png"); 
     try { 
      FileUtils.copyFile(screenshotFile, targetFile); 
     } catch (IOException e) { 
      // logger.error ("Error while writing file ",e); 
     } 

     return targetFile.getAbsolutePath(); 
    } 

    // method to write the error file 
    protected void writeToFile(String logMsg) { 
     try { 
      fos.write(logMsg.getBytes()); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

    int num = 100903; 
    int loaddata = 01; 

    private WebDriver getDriver(String url, DesiredCapabilities caps) { 
     WebDriver webDriver = null; 
     try { 
      webDriver = new RemoteWebDriver(new URL(url), caps); 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } 
     return webDriver; 
    } 

    public void setup(String platform, String browser, String version, 
      String url) throws MalformedURLException, InterruptedException, UnknownHostException { 
     DesiredCapabilities caps = new DesiredCapabilities(); 
     // Platforms 
     if (platform.equalsIgnoreCase("WINDOWS")) 
      caps.setPlatform(org.openqa.selenium.Platform.WINDOWS); 
     System.out.println(org.openqa.selenium.Platform.WINDOWS); 
     // Browsers 
     if (browser.equalsIgnoreCase("Internet Explorer")) 
      caps = DesiredCapabilities.internetExplorer(); 
     if (browser.equalsIgnoreCase("Firefox")) 
      caps = DesiredCapabilities.firefox(); 
     if (browser.equalsIgnoreCase("iPad")) 
      caps = DesiredCapabilities.ipad(); 
     if (browser.equalsIgnoreCase("Android")) { 
      caps = DesiredCapabilities.android(); 
     } 
     writeToFile("Client\tEvent Page\tTaken Time\n"); 
     // Version 
     caps.setVersion("18.0.1"); 
     String[] urls = { "http://ipip:8989/wd/hub", 
       "http://ip:8989/wd/hub" }; 
     System.out.println(InetAddress.getLocalHost().getHostAddress()); 

     // Remote systemS 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver1 = getDriver("http://172.21.1.89:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver1, "driver1 in http://172.21.1.89","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver2 = getDriver("http://172.21.1.4:8989/wd/hub", caps); 
     System.out.println(InetAddress.getLocalHost().getHostAddress()); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver2, "driver2 in http://172.21.1.4","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver3 = getDriver("http://172.21.1.89:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver3, "driver3 in http://172.21.1.89","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver4 = getDriver("http://172.21.1.4:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver4, "driver4 in http://172.21.1.4","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver5 = getDriver("http://172.21.1.89:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver5, "driver5 in http://172.21.1.89","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver6 = getDriver("http://172.21.1.4:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver6, "driver6 in http://172.21.1.4","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver7 = getDriver("http://172.21.1.89:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver7, "driver7 in http://172.21.1.89","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver8 = getDriver("http://172.21.1.4:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver8, "driver8 in http://172.21.1.4","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver9 = getDriver("http://172.21.1.89:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver9, "driver9 in http://172.21.1.89","connecting client system", cal); 
     timeBefore = System.currentTimeMillis(); 
     WebDriver driver10 = getDriver("http://172.21.1.4:8989/wd/hub", caps); 
     timeAfter = System.currentTimeMillis(); 
     cal = timeAfter - timeBefore; 
     currectpage(driver10, "driver10 in http://172.21.1.89","connecting client system", cal); 
     List<WebDriver> drivers = new ArrayList<WebDriver>(); 
     List<String> usernames = new ArrayList<String>(); 
     List<String> passwords = new ArrayList<String>(); 
     if (driver1 != null) { 
      drivers.add(driver1); 
      usernames.add("test"); 
      passwords.add("test1"); 
     } 
     if (driver2 != null) { 
      drivers.add(driver2); 
      usernames.add("user1"); 
      passwords.add("user1"); 
     } 
     if (driver3 != null) { 
      drivers.add(driver3); 
      usernames.add("user2"); 
      passwords.add("user2"); 
     } 
     if (driver4 != null) { 
      drivers.add(driver4); 
      usernames.add("user3"); 
      passwords.add("user3"); 
     } 
     if (driver5 != null) { 
      drivers.add(driver5); 
      usernames.add("user4"); 
      passwords.add("user4"); 
     } 
     if (driver6 != null) { 
      drivers.add(driver6); 
      usernames.add("user5"); 
      passwords.add("user5"); 
     } 
     if (driver7 != null) { 
      drivers.add(driver7); 
      usernames.add("user6"); 
      passwords.add("user6"); 
     } 
     if (driver8 != null) { 
      drivers.add(driver8); 
      usernames.add("user7"); 
      passwords.add("user7"); 
     } 
     if (driver9 != null) { 
      drivers.add(driver9); 
      usernames.add("user8"); 
      passwords.add("user8"); 
     } 
     if (driver10 != null) { 
      drivers.add(driver10); 
      usernames.add("test"); 
      passwords.add("test"); 
     } 

     for (WebDriver driver : drivers) { 
      driver.get("http://172.21.1.4/sspjuly08/"); 

     } 
     System.out.println("OPENED ALL"); 
     // Sending the UserName 
      drive=0; 
     for (int i = 0; i < drivers.size(); i++) { 
      drive++; 
      timeBefore = System.currentTimeMillis(); 
      executeUsernameForAllURLs(urls, By.xpath("//*[@id='txtUserName']"), 
        caps, drivers.get(i), usernames.get(i)); 
      timeAfter = System.currentTimeMillis(); 
      cal = timeAfter - timeBefore; 
      currectpage(drivers.get(i), "driver"+drive+".... in "+drivers.get(i).getCurrentUrl().toString(),"Passing the username", cal); 

     } 
     drive=0; 
     for (int i = 0; i < drivers.size(); i++) { 
      drive++; 
      timeBefore = System.currentTimeMillis(); 
      executePasswordForAllURLs(urls, By.xpath("//*[@id='txtPassword']"), 
        caps, drivers.get(i), usernames.get(i)); 
      timeAfter = System.currentTimeMillis(); 
      cal = timeAfter - timeBefore; 
      currectpage(drivers.get(i), "driver"+drive+".... in "+drivers.get(i).getCurrentUrl().toString(),"Passing the password", cal); 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      try { 
       timeBefore = System.currentTimeMillis(); 
       executeClickForAllURLs(urls, By.xpath("//*[@id='imgLogin']"), caps, 
         driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Clicking the Login button", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      try { 
       timeBefore = System.currentTimeMillis(); 
       executeClickForAllURLs(
         urls, 
         By.xpath("//*[@id='ctl00_ContentPlaceHolder1_idImage']/table/tbody/tr[7]/td[1]/a/img"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Clicking the SMS module", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      try { 
       timeBefore = System.currentTimeMillis(); 
       driver.get("http://172.21.1.4/sspjuly08/Module/SMS/SMSBrowse.aspx"); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Open the SendSMS page", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 

     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Click the homework tab to send sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       executeClickForAllURLs(
         urls, 
         By.xpath("//*[@id='__tab_ctl00_ContentPlaceHolder1_tcPnlView_Homework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"click the HOmework tab to send the sms", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 

     drive=0; 
     for (WebDriver driver : drivers) { 
      // sending the value of Homework date 
      drive++; 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkdateForAllURLs(urls, 
         By.name("txtDate"), caps, 
         driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Sending the Homework date", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Click the class from the list 
      try { 
       timeBefore = System.currentTimeMillis(); 
       executeClickForAllURLs(
         urls, 
         By.xpath("//*[@id='txtDisplayClass']"), 
         caps, driver); 
       executeClickForAllURLs(
         urls, 
         By.xpath("//*[@id='chkClass_0']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"click the class from the combo", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 


     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Click the go Button 
      try { 
       timeBefore = System.currentTimeMillis(); 
       executeClickForAllURLs(
         urls, 
         By.xpath("//*[@id='btnGo_B']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"click the Go button", cal); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl02_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 

     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl03_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl04_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl05_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl06_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl07_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("/*[@id='gvHomework_ctl08_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl09_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl10_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 
     drive=0; 
     for (WebDriver driver : drivers) { 
      drive++; 
      // Sending the homework through sms 
      try { 
       timeBefore = System.currentTimeMillis(); 
       SendHomeworkDescriptionForAllURLs(
         urls, 
         By.xpath("//*[@id='gvHomework_ctl11_txtHomework']"), 
         caps, driver); 
       timeAfter = System.currentTimeMillis(); 
       cal = timeAfter - timeBefore; 
       currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"Send the sms for the home work", cal); 

      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 
     } 

     drive=0; 
     for(WebDriver driver:drivers){ 
      drive++; 
      //capturing the message 
      try { 
       String message="The Record has been successfully saved"; 
       WebElement successmessage=dri.findElement(By.xpath("//*[@id='ctl00_ContentPlaceHolder1_lblMessage']")); 
       if(successmessage.getText().toString().equalsIgnoreCase(message)){ 
        currectpage(driver, "driver"+drive+".... in "+driver.getCurrentUrl().toString(),"The Record has been successfully saved", cal); 
       } 
       else{ 
        writeToFile("The saved message is not shown "+drive+"\n"); 
       } 
      } catch (Exception e) { 
       e.printStackTrace(); 
       writeToFile("Error has been accured in client "+drive+"\n"); 
      } 

     } 


    } 

    public void executeUsernameForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver, String username) 
      throws MalformedURLException { 

     driver.findElement(by).sendKeys(username); 

    } 

    public void executePasswordForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver, String password) 
      throws MalformedURLException { 

     driver.findElement(by).sendKeys(password); 

    } 

    public void executeClickForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     driver.findElement(by).click(); 

    } 

    public void ExcuteStudentClearValueForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     driver.findElement(by).clear(); 

    } 

    public void SendHomeworkdateForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     driver.findElement(by).sendKeys("01/08/2013"); 

    } 

    public void SendHomeworkDescriptionForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     driver.findElement(by).sendKeys("test" + new Integer(num++).toString()); 

    } 

    public void SelectingthesubjectForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     new Select(driver.findElement(by)).selectByVisibleText("ENGLISH"); 

    } 

    public void SendingtheClassForAllURLs(String[] urls, By by, 
      DesiredCapabilities caps, WebDriver driver) 
      throws MalformedURLException { 

     new Select(driver.findElement(by)).selectByVisibleText("VI A"); 

    } 

    public void currectpage(WebDriver driver, String clintname, 
      String EventPage, long timeTaken) { 
     String page = driver.getCurrentUrl(); 
     if (page.toString().equalsIgnoreCase(error.toString())) { 

      errorpage(clintname); 
     } else { 
      writeToFile(clintname + "\t" + EventPage + "\t" + timeTaken+"\n"); 
     } 
    } 

    public void errorpage(String clintname) { 
     writeToFile(clintname + "\tShowing the runtime error\n"); 
    } 

    public static void main(String[] args) throws MalformedURLException, 
      InterruptedException, UnknownHostException { 
     ConcurrentTestSMS te = new ConcurrentTestSMS(); 
     te.setup("WINDOWS", "Firefox", "18.0.1", 
       "http://172.21.1.89:8989/wd/hub"); 
    } 
} 

これは例です。

関連する問題