Codeception REST超时问题

时间:2017-04-03 10:13:37

标签: curl codeception

我试图增加Codeception REST超时,但它似乎无法正常工作。

这就是我所拥有的

class_name: ApiTester
modules:
    enabled:
        - \Helper\Api:
        - REST:
            depends: PhpBrowser
            timeout: 90

超时错误我正在

[GuzzleHttp \ Exception \ ConnectException] cURL错误28:操作在30001毫秒后收到0字节时超时

我做错了什么?

3 个答案:

答案 0 :(得分:3)

我也有这个问题。这是我的修复

在acceptance.suite.yml

    # Codeception Test Suite Configuration

# suite for acceptance tests.
# perform tests in browser using the WebDriver or PhpBrowser.
# If you need both WebDriver and PHPBrowser tests - create a separate suite.

class_name: AcceptanceTester
modules:
    enabled:
        - PhpBrowser
        - REST
    config:
        REST:
            timeout: 90 # or 90000 the same result
        PhpBrowser:
            url: 'http://YOUR_URL_TO_YOUR_PUBLIC_FOLDER/public'
            curl:
                CURLOPT_TIMEOUT: 300 // in Seconds

我的问题是我只在其中放入了#34依赖"到PhpBrowser但你需要配置PhpBrowser来设置超时。

我希望我可以帮助并抱歉我的英语不好:)

亲切的问候, Thomas Meejumlong

答案 1 :(得分:0)

谢谢托马斯,我已将此添加到我的api.suite.yml文件中并且有效。

class_name: ApiTester modules: enabled: - \Helper\Api - REST - PhpBrowser config: REST: depends: PhpBrowser timeout: 90 PhpBrowser: url: '' curl: CURLOPT_TIMEOUT: 90

答案 2 :(得分:0)

对于 Codeception 4。

在 api.suite.yml 或acceptance.suite.yml 中添加类似这样的内容

actor: ApiTester
modules:
  enabled:
    - PhpBrowser:
        url: https://localhost/index-test.php
        timeout: 5
#        curl:
#          CURLOPT_RETURNTRANSFER: true // add some curl option
    - REST:
        depends: PhpBrowser
        url: https://localhost/index-test.php
        part: Json
    - Yii2:
        configFile: 'tests/config/test.php'
        part: [orm, fixtures]