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

Программирование на Python для тестировщиков
онлайн, начало 18 октября
Логи как инструмент тестировщика
онлайн, начало 21 октября
Тестирование REST API
онлайн, начало 21 октября
Организация автоматизированного тестирования
онлайн, начало 18 октября

sapr71

Регистрация: 07 июн 2019
Offline Активность: 02 сен 2019 13:49
*----

Мои темы

SELENIUM. JAVA. Как записать и читать Cookie из файла?

22 Июнь 2019 - 05:43

Selenium.

Chromedriver.

Java.

Версия chrome: Версия 75.0.3770.100 (Официальная сборка), (64 бит)

 

Объявляю переменную Set<Cookie> temp1 и присваиваю ей значение текущих cookie.

Блок-1

Set<Cookie> temp1;
temp1 = driver.manage().getCookies();

После чего мне нужно сохранить эту информацию в файл, что бы потом в определенный момент я мог ее считать из файла.

Блок-2

//Сохранение переменной temp1 в файл

//Загрузка в переменную temp2 информации из файла

Объявляю переменную Set<Cookie> temp2 в которую надо считать информацию из файла и после чего задать значение cookie из нее.

Блок-3

Set<Cookie> temp2;
driver.manage().addCookie(temp2);

Интересует именно Блок-2. Подскажите как сделать.


Selenium. Chromedriver. user-data-dir. Java. Как хранить Cookies?

22 Июнь 2019 - 01:31

Версия chrome: Версия 75.0.3770.100 (Официальная сборка), (64 бит)

 

Работаю с Chromedriver Headless. Мне нужно хранить где-то куки, что бы после закрытия браузера они не терялись. Пробовал использовать chrome с параметром user-data-dir. Все вроде нормально, создает файлы с настройками и куками в указанной папке и пока сервер работает он берет оттуда куки и записывает их. Но после перезагрузки драйвера он перезаписывает файлы и уже не видит старые куки и создает новые. 

 

 

 

Для проверки создал на локальном сервере вот такой скрипт ( http://test-cookies.local/test.php )

<?php setcookie ("TestCookie", 'COOKIES',time()+3600); ?>
<title>КУКИ : <?php print $_COOKIE['TestCookie']; ?> </title>

Выполняю в selenium (java) вот такой код и вижу что куки он не загружает после перезагрузки

System.setProperty("webdriver.chrome.driver", "drivers\\chromedriver.exe");

ChromeOptions options = new ChromeOptions();

options.addArguments("--user-data-dir=c:\\Users\\lexa\\IdeaProjects\\project\\user1\\");

options.setHeadless(true);

WebDriver driver = new ChromeDriver(options);

driver.get("http://test-cookies.local/test.php");

System.out.println(driver.getTitle());

driver.quit();

Подскажите, может есть какие-нибудь другие решения, что бы куки сохранялись или может я что то не так делаю?

 

 

 

 


ОШИБКА. Selenium, Facebook WebDriver, PHP.

07 Июнь 2019 - 01:43

Добрый день! Пытаюсь разобраться с selenium.

 

Использую: selenium-server-standalone-3.9.1 и Facebook WebDriver.

 

 
При выполнении этого кода, все норм. Открывается в хроме страница гугл.

<?php
namespace Facebook\WebDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
require_once('vendor/autoload.php');
$host = 'http://localhost:4444/wd/hub';
$capabilities = DesiredCapabilities::chrome();
$driver = RemoteWebDriver::create($host, $capabilities);
$driver->get('https://www.google.com/');
print 'ok';
?>

 

А вот если добавляем строку : $driver->findElement(WebDriverBy::xpath('*[@id="tsf"]/div[2]/div/div[3]/center/input[2]'))->sendKeys('abc')->click();

<?php
namespace Facebook\WebDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
require_once('vendor/autoload.php');
$host = 'http://localhost:4444/wd/hub';
$capabilities = DesiredCapabilities::chrome();
$driver = RemoteWebDriver::create($host, $capabilities);
$driver->get('https://www.google.com/');
$driver->findElement(WebDriverBy::xpath('*[@id="tsf"]/div[2]/div/div[3]/center/input[2]'))->sendKeys('abc')->click();
print 'ok';
?>

 
 
То вылетает ошибка вот такая:

Fatal error: Uncaught Facebook\WebDriver\Exception\NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":"*[@id="tsf"]/div[2]/div/div[3]/center/input[2]"} (Session info: chrome=75.0.3770.80) For documentation on this error, please visit: http://seleniumhq.or...ch_element.html Build info: version: '3.9.1', revision: '63f7b50', time: '2018-02-07T22:42:28.403Z' System info: host: 'OBR-PC', ip: '192.168.100.104', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_211' Driver info: driver.version: unknown in C:\xampp\htdocs\vendor\facebook\webdriver\lib\Exception\WebDriverException.php:102 Stack trace: #0 C:\xampp\htdocs\vendor\facebook\webdriver\lib\Remote\HttpCommandExecutor.php(326): Facebook\WebDriver\Exception\WebDriverException::throwException(7, 'no such element...', Array) #1 C:\xampp\htdocs\vendor\facebook\webdriver\lib\Remote\RemoteWebDriver.php(547): Facebook\WebDriver\Remote\HttpCommandExecutor->execute(Object(Facebook\WebD in [/size] C:\xampp\htdocs\vendor\facebook\webdriver\lib\Exception\WebDriverException.php on line [/size]102

 
 
Подскажите как быть, вчера весь день убил на поиск решения, так и не разобрался((
 
 
В качестве руководства использовал вот эту статью: http://kaplunenko.na...ake-screenshot/


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