Доступ к файлам сеанса браузера или кешу через Selenium / PHPunit - PullRequest
1 голос
/ 13 апреля 2011

Пытаюсь скачать картинки с сайта через Selenium.Примеры, которые я нашел до сих пор, советовали извлечь URL изображений через селен, а затем загрузить изображение с помощью библиотеки HTTP, такой как cURL.

Поскольку при запуске теста Selenium картинки уже были загружены, я обнаружил, что делать отдельный запрос для каждой картинки не является хорошей идеей.

Есть ли способ получить изображения из кэша браузера через Selenium / PHPunit (или, возможно, локально, если сервер селена хранит их локально во временной папке сеанса)?

Спасибо.

1 Ответ

1 голос
/ 06 октября 2011

Это старый вопрос, но так как я недавно работал с Selenium, я решил поставить это здесь для любого, кто наткнется на это.

В моих чтениях о Selenium и на практике проблема здесь заключается в том, что кеш браузера не обрабатывается непосредственно Selenium, поэтому код для доступа к кешу должен быть для каждого браузера, и оченьвероятно, будет хрупким.

Использование метода CURL гарантирует получение необходимых изображений.

Было бы замечательно, если бы Selenium разрешил доступ к кэшированным версиям файлов, так же как он мог делать скриншоты (будет ли скриншот достаточным?)

Вы можете сделать это в PHPUnit следующим образом:

require_once 'PHPUnit/Extensions/SeleniumTestCase.php';

class WebTest extends PHPUnit_Extensions_SeleniumTestCase
{
protected $captureScreenshotOnFailure = FALSE;
    protected $screenshotPath = 'C:\selenium\screenshots';
    protected $screenshotUrl = 'http://localhost/screenshots';

... (write tests here)
}

Надеюсь, это поможет!

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