【问题标题】:Simple Test can not open HTTPS URL简单测试无法打开 HTTPS URL
【发布时间】:2017-03-03 12:53:57
【问题描述】:

我正在使用简单测试运行 UI 测试。下面是代码。

<?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 是资源,给定的布尔值 在第 255 行的 /home/okhatav/PHP/simpletest/socket.php 异常 1! 意外的 PHP 错误 [fclose() 期望参数 1 是资源, boolean given] 严重性 [2] in [/home/okhatav/PHP/simpletest/socket.php 第 255 行] 在 testWeAreTopOfGoogle 在 TestOfRankings 1) 读取套接字时出错 [无法打开 [ua-useast1a01-01-internalip.qa.host.net:443] 与 [] 在 [15] 秒] 在 testWeAreTopOfGoogle 在 TestOfRankings 失败!!!

【问题讨论】:

  • 当您将该网址放在浏览器窗口中时,它会显示找不到服务器。
  • 使用try catch块,服务器不存在
  • 这个 URL 是有效的 URL,也可以工作。

标签: php sockets url simpletest


【解决方案1】:

我已经下载了 simpletest 并运行了完全相同的代码,并收到了类似但信息量稍大的消息:

异常:TestOfRankings -> testWeAreTopOfGoogle -> 意外的 PHP 错误 [fclose() 期望参数 1 是资源,给定布尔值] [/var/www/html/simpletest/socket.php 第 255 行] 中的严重性 [2]]

Fail: TestOfRankings -> testWeAreTopOfGoogle -> Error reading socket [Cannot open [ua-useast1a01-01-internalip.qa.host.net:443] with [php_network_getaddresses: getaddrinfo failed: Name or service not known] inside [15 ] 秒]

这表明指定的 URL 无效或无法解析。尝试直接访问 URL 会导致以下结果:

将其更改为有效的 URL 不会出错。

虽然它可能不相关,但如果将相关主机的 network map 与最近的 Dyn attacks 进行比较,它几乎可以完美排列。您可以尝试联系房东,看看他们是否知道这个问题。

【讨论】:

    【解决方案2】:

    升级您的 simpletest 版本(您运行的不是最新版本 - 错误行与当前代码不匹配)。您可以从https://github.com/simpletest/simpletest 获取,或者如果您以这种方式安装,则只需运行composer update

    特别是,这个提交:https://github.com/simpletest/simpletest/commit/91b0d224a1c81aacbf888b68f9812f5ab2610114 似乎应该告诉你 URL 无效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-23
      • 2018-05-02
      • 1970-01-01
      • 1970-01-01
      • 2013-01-15
      • 2021-06-14
      • 1970-01-01
      • 2022-10-20
      相关资源
      最近更新 更多