#php #sockets #url #simpletest
#php #сокеты #url #самый простой
Вопрос:
Я запускаю тест пользовательского интерфейса, используя простой тест. Ниже приведен код.
<?php
require_once('simpletest/autorun.php');
require_once('simpletest/web_tester.php');
class TestOfRankings extends WebTestCase {
function testWeAreTopOfGoogle() {
$this->get('https://ua-useast1a01-01-internalip.qa.host.net/ultraadmin/');
}
}
?>
Я получаю сообщение об ошибке ниже:
E_WARNING: fclose() ожидает, что параметр 1 будет ресурсным, логическое значение задано в /home/okhatav/PHP/simpletest/socket.php в строке 255 Исключение 1! Неожиданная ошибка PHP [fclose () ожидает, что параметр 1 будет ресурсным, задается логическое значение] серьезность [2] в [/home/okhatav/PHP/simpletest/socket.php строка 255] в testWeAreTopOfGoogle в TestOfRankings 1) Ошибка чтения сокета [Не удается открыть [ua-useast1a01-01-internalip.qa.host.net: 443] с помощью [] в течение [15] секунд] в testWeAreTopOfGoogle в TestOfRankings СБОИ!!!
Комментарии:
1. Когда вы вводите этот URL в окно браузера, он сообщает, что сервер не найден.
2. используйте блок try catch, сервер не существует
3. Этот URL является допустимым URL и тоже работает.
Ответ №1:
Я загрузил simpletest и запустил точно такой же код и получил похожее, но немного более информативное сообщение:
Исключение: TestOfRankings -> testWeAreTopOfGoogle -> Непредвиденная ошибка PHP [fclose() ожидает, что параметр 1 будет ресурсным, задается логическое значение] серьезность [2] в [/var/www/html/simpletest/socket.php строка 255]
Сбой: TestOfRankings -> testWeAreTopOfGoogle -> Сокет чтения ошибок [Не удается открыть [ua-useast1a01-01-internalip.qa.host.net: 443] с помощью [php_network_getaddresses: ошибка getaddrinfo: имя или служба неизвестны] в течение [15] секунд]
Это указывает на то, что указанный URL-адрес недействителен или возникли проблемы с разрешением. Попытка получить прямой доступ к URL-адресу приводит к следующему:
Изменение его на действительный URL работает без ошибок.
Хотя это может быть и не связано, если вы сравните сетевую карту рассматриваемого хоста с картой недавних атак Dyn, она выстраивается почти идеально. Вы могли бы попробовать связаться с хостом, чтобы узнать, знают ли они о проблеме.
Ответ №2:
Обновите свою версию simpletest (вы используете не последнюю — строки ошибок не совпадают с текущим кодом). Вы можете получить из https://github.com/simpletest/simpletest или просто запустите composer update
, если вы установили таким образом.
В частности, этот коммит:https://github.com/simpletest/simpletest/commit/91b0d224a1c81aacbf888b68f9812f5ab2610114 похоже, это тот, который должен сообщить вам, что URL-адрес недействителен.