Перейти к содержимому

Selenium WebDriver: полное руководство
онлайн, начало 19 октября
Логи как инструмент тестировщика
онлайн, начало 22 октября
Первый Онлайн ИНститут Тестировщиков
онлайн, начало 15 октября
Тестирование REST API
онлайн, начало 22 октября
Фотография

Помогите решить проблему с ожиданием аякса


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1 MaksQA

MaksQA

    Новый участник

  • Members
  • Pip
  • 3 сообщений

Отправлено 29 Январь 2018 - 15:55

Есть такой скрипт , подскажите как правильно написать ожидание загрузки аякса , читаю-читаю , не могу все это собрать в кучу 

Сейчас использую   Thread.sleep(6000);

 

 

_________________________________________________________________________________________________

 

 

package com.example.tests;
 
import java.util.regex.Pattern;
import java.util.concurrent.TimeUnit;
import org.junit.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;
import java.util.List;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
 
 
public class class2 {
  private WebDriver driver;
  private String baseUrl;
  private boolean acceptNextAlert = true;
  private StringBuffer verificationErrors = new StringBuffer();
 
 
  @Before
  public void setUp() throws Exception {
  System.setProperty("webdriver.chrome.driver","C:\\chromedriver.exe");
  driver = new ChromeDriver();
  driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
 
  }
  
 
 
  @Test
  public void testUntitledTestCase() throws Exception {
    driver.findElement(By.name("add-to-cart")).click();
    driver.findElement(By.linkText("Просмотр корзины")).click();
    driver.findElement(By.linkText("Оформить заказ")).click();
    driver.findElement(By.id("billing_first_name")).click();
    driver.findElement(By.id("billing_first_name")).clear();
    driver.findElement(By.id("billing_first_name")).sendKeys("test");
    driver.findElement(By.id("billing_address_1")).click();
    driver.findElement(By.id("billing_address_1")).clear();
    driver.findElement(By.id("billing_address_1")).sendKeys("tset");
    driver.findElement(By.id("billing_city")).click();
    driver.findElement(By.id("billing_city")).clear();
    driver.findElement(By.id("billing_city")).sendKeys("test");
    driver.findElement(By.id("billing_phone")).click();
    driver.findElement(By.id("billing_phone")).clear();
    driver.findElement(By.id("billing_phone")).sendKeys("1111111111111111111111111");
    driver.findElement(By.id("billing_email")).click();
    driver.findElement(By.id("billing_email")).click();
    // ERROR: Caught exception [ERROR: Unsupported command [doubleClick | id=billing_email | ]]
    driver.findElement(By.id("billing_email")).clear();
    driver.findElement(By.id("billing_email")).sendKeys("test@test.com");
    Thread.sleep(6000);
    driver.findElement(By.id("place_order")).click();
    driver.findElement(By.cssSelector("p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received")).click();
    try {
      assertEquals("Спасибо. Ваш заказ был принят.", driver.findElement(By.cssSelector("p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received")).getText());
    } catch (Error e) {
      verificationErrors.append(e.toString());
    }
  }
 
  @After
  public void tearDown() throws Exception {
    driver.quit();
  }
}

  • 0

#2 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 29 Январь 2018 - 16:20

Google -> selenium explicitWait


  • 0

#3 MaksQA

MaksQA

    Новый участник

  • Members
  • Pip
  • 3 сообщений

Отправлено 30 Январь 2018 - 16:02

Google -> selenium explicitWait

 

не могу понять как впихнуть это в мой код) уже голова кипит)


  • 0

#4 TatyanaV

TatyanaV

    Опытный участник

  • Members
  • PipPipPipPip
  • 315 сообщений
  • ФИО:Воробьева Татьяна


Отправлено 31 Январь 2018 - 08:25

 

Google -> selenium explicitWait

 

не могу понять как впихнуть это в мой код) уже голова кипит)

 

Вам предложили впихнуть это в браузер и почитать результаты. :)


  • 0

#5 MaksQA

MaksQA

    Новый участник

  • Members
  • Pip
  • 3 сообщений

Отправлено 31 Январь 2018 - 08:33

 

 

Google -> selenium explicitWait

 

не могу понять как впихнуть это в мой код) уже голова кипит)

 

Вам предложили впихнуть это в браузер и почитать результаты. :)

 

Вы думаете я не читал все это?)  Просто я новичок в этом деле ) 


  • 0

#6 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 31 Январь 2018 - 10:34

 

 

 

Google -> selenium explicitWait

 

не могу понять как впихнуть это в мой код) уже голова кипит)

 

Вам предложили впихнуть это в браузер и почитать результаты. :)

 

Вы думаете я не читал все это?)  Просто я новичок в этом деле ) 

 

	public WebElement elemIsClickable(WebDriver driver, String elXpath) {
		return (new WebDriverWait(driver, 5))
				.until(ExpectedConditions.elementToBeClickable(By.xpath(elXpath)));
	}

  • 0


Selenium 2.0: стартовый уровень
онлайн, начало 9 ноября
Программирование на Java для тестировщиков
онлайн, начало 12 октября
Автоматизация функционального тестирования
онлайн, начало 5 октября
Selenium WebDriver: полное руководство
онлайн, начало 19 октября



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале