t.me/atinfo_chat Telegram группа по автоматизации тестирования

как можно извлечь текст из текстового файла на Яндекс диске?

Теги: #<Tag:0x00007f747f78c3a0>

Я только начала работать с Webdriver, делаю задание на тестирование Яндекс.Диск. В задании нужно было создать текстовый файл, вставить к него текст, а затем сохранить изменения и проверить правильно ли все сохранилось. Я открываю файл, а затем никак не могу подобраться к его тексту.
Я ищу по xpath //div[@class=‘Outline’]//span//span. Но я и много чего другого перепробовала.

Выдает ошибку TimeoutException: Expected condition failed: waiting for presence of element located by: By.xpath://div[@class=‘Outline’]//span//span Хотя на странице все находит. Я в конце не закрывала браузер и проверила страницу в самом тесте, так тоже находит.

Код

public void getTextFromFile(String nameOfFile) {
    new WebDriverWait(driver, 20)
            .until(ExpectedConditions.presenceOfElementLocated(By.xpath("//span[text()='" + nameOfFile + ".docx']")));
    Set<String> oldWindowsSet = driver.getWindowHandles();
    Actions builder = new Actions(driver);
    builder.moveToElement(driver.findElement(By.xpath("//span[text()='" + nameOfFile + ".docx']")))
            .doubleClick().build().perform();
    String newWindow = (new WebDriverWait(driver, 10))
            .until(new ExpectedCondition<String>() {
                       public String apply(WebDriver driver) {
                           Set<String> newWindowsSet = driver.getWindowHandles();
                           newWindowsSet.removeAll(oldWindowsSet);
                           return newWindowsSet.size() > 0 ?
                                   newWindowsSet.iterator().next() : null;
                       }
                   }
            );
    driver.switchTo().window(newWindow);
    new WebDriverWait(driver, 20)
            .until(ExpectedConditions.presenceOfAllElementsLocatedBy(FRAME));
    driver.switchTo().frame(0);
   new WebDriverWait(driver, 20)
            .until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@class='Outline']//span//span")));

Попробуйте сначала //div[@class=‘Outline’]//p/span

org.openqa.selenium.TimeoutException: Expected condition failed: waiting for presence of element located by: By.xpath: //div[@class=‘Outline’]//p//span
то же самое…

//div[@class=‘Outline’]//div[@id=‘WACViewPanel_EditingElement’]//p//span//span
вот по этому xpath один раз сработало…но при следующих попытках начало выдавать
org.openqa.selenium.TimeoutException: Expected condition failed: waiting for presence of element located by: By.xpath: //div[@class=‘Outline’]//div[@id=‘WACViewPanel_EditingElement’]//p//span//span

У вас там есть div c id от него пробуйте найти (5 сверху див).

org.openqa.selenium.TimeoutException: Expected condition failed: waiting for presence of element located by: By.xpath: //div[@id=‘WACViewPanel_EditingElement_WrappingDiv’]//p//span//span
тоже самое.

Значит, вы во фрейм неправильно переключаетесь - driver.switchTo().frame(0);