У меня
openjdk version "1.8.0_181"
ChromeDriver 2.42.591071
Google Chrome 69.0.3497.100
Selenium build info: version: '3.14.0'
И я запускаю тест с текущим фрагментом кода:
<?php
namespace Facebook\WebDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
use Facebook\WebDriver\Chrome\ChromeOptions;
ini_set("display_errors", "on");
error_reporting(E_ALL);
require_once('vendor/autoload.php');
// start Chrome with 5 second timeout
$host = 'http://localhost:4444/wd/hub';
$capabilities = DesiredCapabilities::chrome();
$options = new ChromeOptions();
$options->addArguments(array(
'--headless',
'--no-sandbox',
'--window-size=1920,1080',
'user-data-dir=/usr/share/nginx/html/browser/tmp/profile',
));
$capabilities->setCapability(ChromeOptions::CAPABILITY, $options);
$driver = RemoteWebDriver::create($host, $capabilities, 5000);
$driver->get('http://example.com/browser/cookies.php');
$driver->takeScreenshot('/usr/share/nginx/html/browser/tmp/screen.png');
// close the browser
$driver->quit();
echo "<img src='tmp/screen.png' />";
Код в cookies.php
:
<?php
if(isset($_COOKIE['test'])){
echo "It is set";
}else{
setcookie("test", "testCookie");
echo "Setting it ...";
}
Я ожидаю, что cookie будет повторно использоваться при втором посещении, и поэтому я получу «Он установлен», вместо этого я получаю «Установки ...» независимо от того, сколько раз я запрашиваю страницу.
Я проверил путь к профилю, он был успешно создан.
Я также попробовал страницу в своем браузере, и она работает нормально, так что мне здесь не хватает?
Спасибо