【问题标题】:How to append a query string to url in codeception如何在codeception中将查询字符串附加到url
【发布时间】:2016-08-23 21:18:17
【问题描述】:

我正在尝试使用 Codeception 和 BrowserStack 在网站上进行验收测试。我正在测试的网站需要在 URL 后附加一个查询字符串才能登录。

例如:https://examplesite.com/?realm=ab-cd

我已尝试在acceptance.suites.yml 文件中使用此网址:

class_name: AcceptanceTester 

modules:
    enabled:
        - WebDriver:
            url: http://examplesite.com/?realm=ab-cd
            host: 'hostmaster@examplesite.com:mykey@hub.browserstack.com'
            port: 80
            browser: firefox
            capabilities:
                javascriptEnabled: true

我也尝试在实际测试中放置一个 sendGET:

$I->sendGET('/?realm=ab-cd');

两次尝试都导致无法登录。正确的方法是什么?

【问题讨论】:

    标签: codeception


    【解决方案1】:

    所以我发现在acceptance.suite.yml 文件中,您提供的Url 不能附加查询字符串。按照 Naktibalda 的建议,我尝试了一些变体:

     $I->amOnPage()
    

    我发现在附加查询字符串时,我必须以 ? (省略前面的 /)。例如:

    $I->amOnPage('?realm=bu-pd'); //Works
    $I->amOnPage('/?realm=bu-pd'); //Doesn't work
    

    【讨论】:

      【解决方案2】:

      我遇到了这个问题,自己找到了解决方案,所以在这里给出:

      $I->amOnPage(['/path','query_param1' => 'bu-pd']);

      【讨论】:

        【解决方案3】:

        sendGET属于REST模块,在WebDriver测试中使用amOnPage

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-06-29
          • 2011-10-27
          • 1970-01-01
          • 2016-08-08
          • 1970-01-01
          • 1970-01-01
          • 2012-02-02
          相关资源
          最近更新 更多