Webdriver为运行Codeception验收测试

时间:2016-08-22 19:45:54

标签: selenium jenkins safari timeout codeception

我在Jenkins中设置了很长的Codeception验收测试。 Safari在开始测试时会定期抛出\ ScriptTimeoutException(每14到23次浏览器启动就会抛出此错误)。每次启动管道时,都不会在同一测试中发生这种情况。

例外打印为:

  

[实\的webdriver \异常\ ScriptTimeoutException]

     

等待对命令的响应"最大化窗口" 30002毫秒后   (警告:服务器未提供任何堆栈跟踪信息)   命令持续时间或超时:30.01秒

目前,acceptance.suite.yml中的safari环境变量如下所示:

safari:
     modules:
        config:
            WebDriver:
                browser: 'safari'
                window_size: 'maximize'
                clear_cookies: true
                restart: true
                options:
                    cleanSession: true

我已尝试设置确切的窗口大小并完全删除window_size选项。此错误的发生率似乎没有任何差异。

使用Selenium server 2.53.1。 Safari版本9.1.2。詹金斯版本2.16

关于减少这种情况发生次数的任何想法?

1 个答案:

答案 0 :(得分:1)

我也遇到了这个错误:

1)ListingRaceTestCest:测试事件  测试测试/接受/ ListingRaceTestCest.php:登录

[Facebook \ WebDriver \ Exception \ TimeOutException]

场景步骤:

  1. $ I-> waitForElementVisible( “治行日期”,15)
  2. $ I->点击( “按钮#附加规则BTN”)
  3. $ I->请参阅(“配置付款规则”)
  4. $ I-> waitForElementVisible( “#侧面菜单”,15)
  5. $ I-> pauseExecution()
  6. $ I-> click(“table#races-table tbody tr:first-child td:last-child button”)
  7. 我现在找到了一个解决方案并且它为我工作,试试这个希望它适合你!

    ini_set('max_execution_time',300); // 300秒= 5分钟

    这是动态时间的设置,您可以相应地更改它。 Codeception提供大约5分钟的执行时间设施,然后它将给出超时错误。 我得到了这种情况,现在找到了解决方案。