задача: сделать так, чтобы заходить в систему под своим логином-паролем, находить там данные и редактировать их.
Создала 3 класса:
- Основной
- Поиск
Проблема в том, что при реализации класса поиск открывается лишнее пустое окно браузера хром и система начинает искать уже в нем (пустом окне), а там, естественно, нужных элементов нет. Я понимаю, что проблема в том, что в классе поиск я инициазирую хромдрайвер, но есло я его оттуда убираю, то все мои xpath краснеют.
Есть возможность это обойти? Ошибка дурацкая, но я не понимаю, где косячу.
Основной
package ex1;
import exMail.SleepUtil;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;
public class RTest {
@Test
public void rTestAll() {
System.setProperty("webdriver.chrome.driver", "C:/Users/kate/Downloads/chromedriver_win32 (2)/chromedriver.exe");
ChromeDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get("http://test/main");
SleepUtil.sleep(9000);
WebElement element = driver.findElementByXPath((".//a[text() = 'Войти']"));
element.click();
SleepUtil.sleep(9000);
WebElement element2 = driver.findElementByXPath(("//input[@placeholder = 'Логин']"));
element2.sendKeys("TestAndTest", Keys.ENTER);
WebElement element3 = driver.findElementByXPath(("//input[@placeholder = 'Пароль']"));
element3.sendKeys("TestAndTest", Keys.ENTER);
FindTest Test = new FindTest(element, driver);
Test.findTESTadOpen();
}
}
Поиск
package ex1;
import exMail.SleepUtil;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;
public class FindTest {
WebElement Testelement;
WebDriver driver;
public FindTest (WebElement Testlement, WebDriver driver) {
this.Testelement = Testelement;
this.driver = driver;
}
public void findTESTadOpen() {
ChromeDriver driver = new ChromeDriver();
WebElement elementFind;
elementFind = driver.findElementByXPath(("//input[@placeholder = 'Введите текст для поиска...']"));
elementFind.click();
elementFind.sendKeys("Нет Наркотикам!", Keys.ENTER); ////*[text()='Антинар']
SleepUtil.sleep(7000);
WebElement elementTest = driver.findElementByXPath(("//td[@class = 'left-align no-datable-with-reason z-listcell']"));
SleepUtil.sleep(7000);
elementTest.click();//left-align no-datable-with-reason z-listcell
SleepUtil.sleep(5000);
WebElement elementEdit;
elementEdit = driver.findElementByXPath(("//button[@title = 'Редактировать сведения']"));
elementEdit.click();
}
}