Я пытаюсь написать тесты E2E с помощью Panther. Мои тесты докеризованы. Загружаю драйвер хрома и библиотеку Panther :
RUN apt-get update ;\
apt-get install -y default-mysql-client php8.2-mysql php8.2-ldap php8.2-xdebug git chromium-driver
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer ;\
chmod 777 /var/www
RUN apt-get clean ;\
rm -rf /tmp/* /var/tmp/*
RUN cd /var/www/html;\
composer req --dev symfony/panther;\
composer req --dev symfony/framework-bundle
ENV PANTHER_WEB_SERVER_DIR=/var/www/html
ENV PANTHER_WEB_SERVER_PORT=8080
ENV PANTHER_NO_SANDBOX=1
ENV KERNEL_CLASS=PantherTestKernel
Но когда я запускаю контейнер и запускаю простой тест для входа в систему, я получаю ошибку с сообщением «Ваш браузер либо не знает, как обрабатывать файлы cookie, либо отказывается их обрабатывать». ."
use Symfony\Component\Panther\PantherTestCase;
class E2eTest extends PantherTestCase
{
public function testMyApp(): void
{
$client = static::createPantherClient(['port'=>8080]);
$crawler = $client->request('GET', '/login_page.php');
$crawler->filter('#username')->sendKeys('test');
$crawler->filter('input[type="submit"]')->click();
$crawler = $client->waitFor('#password');
$crawler->filter('#password')->sendKeys('test123');
$crawler->filter('input[type="submit"]')->click();
$crawler = $client->waitFor('#main-container', 10, 2000);
$client->takeScreenshot('tests/screenshot.png');
$this->assertSelectorNotExists('.alert'); #fails
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... -in-docker
Symfony/Panther — файлы cookie отключены в драйвере Chrome в Docker ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Python/Selenium – очистить кеш и файлы cookie в моем веб-драйвере Chrome?
Anonymous » » в форуме Python - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу имитировать JavaScript вперед, используя Panther в Symfony?
Anonymous » » в форуме Javascript - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-