Я пытаюсь загрузить файл примрено так, как это описано в примере:
tests/functional/FileUploadTest.php
Мой код (отрывок):
case 'file-input':
echo sprintf("\nPath: %s", $field['data']);
echo sprintf("\nFile exists: %s\n", file_exists($field['data']));
if (!isset($field['data']))
return false;
if (!$this->timeStop($field['xpath']))
return false;
$file_input = $this->driver->findElement(WebDriverBy::xpath($field['xpath']));
$file_input->setFileDetector(new LocalFileDetector());
$file_input->sendKeys($field['data']);
if (isset($field['sleep']))
sleep($field['sleep']);
break;
Вывод:
2023-09-14T09:10:02.806739804Z Path: /var/www/html/yii-application/src/backend/controllers/../../../../cache/ip_0142eb_svidetelstvo.jpg
2023-09-14T09:10:02.806739805Z File exists: 1
Суть проблемы:
Каждый сайт, на который я пытаюсь загрузить в input свой файл - выдает ошибку загрузки. Неважно какой сайт, просто выдает. Причем, сам файл не битый, спокойно открывается. И зачастую в форме даже указано имя файла, но вот сама загрузка не идет на сервер (куда загружаю файл).
Вкладка Network (DevTools) не дает особых данных в этом вопросе
Примечание:
Сам WebDriver и PHP вообще ни о каких ошибках не говорит. Ошибки на принимающей стороне, или может быть в чем-то другом. Утверждать не могу