Selenium Автоматизация онлайн-игры - PullRequest
0 голосов
/ 25 апреля 2020

Я пытаюсь автоматизировать "http://zzzscore.com/dontap/en" и придумала приведенный ниже код

Некоторое время автоматизация работает нормально, но позже она завершается с ошибкой ниже

Исключение в потоке "main" org.openqa.selenium.StaleElementReferenceException: ссылка на устаревший элемент: элемент не прикреплен к документу страницы (информация о сеансе: chrome = 81.0.4044.122)

    driver.get("http://zzzscore.com/dontap/en/");
    WebElement Parent = driver.findElement(By.id("grid"));
    WebElement Child = Parent.findElement(By.xpath("//*[@id='grid']/div[1]"));
    Child.findElement(By.xpath("//*[contains(@class, 'tab b start')]")).click();
    System.out.println("Done 1");

    for (int i = 2; i <= 4; i++) {
        Child.findElement(By.xpath("//*[contains(@class, 'tab b')]")).click();
        System.out.println("Done " + "" + i);
    }

    for ( int i = 5; i<15; i++) {
    if ( driver.findElement(By.xpath("//*[contains(@class, 'tab b')]")).isDisplayed() )  {
        Thread.sleep(500);
        driver.findElement(By.xpath("//*[contains(@class, 'tab b')]")).click();
        System.out.println("Done "+ i);
    }
    else System.out.println("Element is not present");
    }

1 Ответ

0 голосов
/ 25 апреля 2020

В игре всего 5 рядов, которые повторяются каждый раз после определенного интервала времени. Следующий код работает отлично, только время и количество итераций в l oop должны быть изменены.

         System.setProperty("webdriver.chrome.driver", "C:\\Users\\WaveRiders\\Downloads\\qa_automation_christies_bibg-master\\driver\\chromedriver.exe");  

     // Instantiate a ChromeDriver class.     
     WebDriver driver=new ChromeDriver();  

   // Launch Website  
     driver.navigate().to("http://zzzscore.com/dontap/en");  

 //Maximize the browser  
     driver.manage().window().maximize();  
     int i = 1;
     while(i < 50) {
         driver.findElement(By.xpath("//div[@class='grid x4']/div[1]/div[contains(@class,'tab b')]")).click();
         Thread.sleep(200);
         System.out.println("Clicked element : "+1);

         driver.findElement(By.xpath("//div[@class='grid x4']/div[2]/div[contains(@class,'tab b')]")).click();
         Thread.sleep(200);
         System.out.println("Clicked element : "+2);

         driver.findElement(By.xpath("//div[@class='grid x4']/div[3]/div[contains(@class,'tab b')]")).click();
         Thread.sleep(200);
         System.out.println("Clicked element : "+3);

         driver.findElement(By.xpath("//div[@class='grid x4']/div[4]/div[contains(@class,'tab b')]")).click();
         Thread.sleep(200);
         System.out.println("Clicked element : "+4);

         driver.findElement(By.xpath("//div[@class='grid x4']/div[5]/div[contains(@class,'tab b')]")).click();
         Thread.sleep(200);
         System.out.println("Clicked element : "+5);

         //Change this wait time
         Thread.sleep(500);

         i++;

     }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...