如果完成测试所花费的时间超过30秒,则测试脚本失败

时间:2019-04-02 06:41:39

标签: selenium

要求是特定的硒脚本必须在30秒内完成执行。如果超过30秒,脚本将失败。不是测试步骤,而是整个脚本必须在30秒内运行(而不是隐式或显式等待)

2 个答案:

答案 0 :(得分:1)

如果您将Selenium与Java和TestNG结合使用,则可以在测试注释中使用timeOut参数

例如

@Test(timeOut = 30000)
public void testMethod(){
     // do's
}

这是您可以在XML中进行配置以在给定时间内完成测试的方法

<suite name="Time test Suite" time-out="30000" verbose="1" >
  <test name="Timeout Test" >
    <classes>
      <class name="com.howtodoinjava.test.TimeoutSuite" />
    </classes>
  </test>
</suite>

有关更多详细信息,请参见this

答案 1 :(得分:0)

setScriptTimeout

setScriptTimeout设置在引发错误之前等待异步脚本完成执行的时间。如果超时为负,则将允许脚本无限期运行。

  • 定义:

    WebDriver.Timeouts setScriptTimeout(long time, java.util.concurrent.TimeUnit unit)
    
    Parameters:
     time - The timeout value.
     unit - The unit of time.
    
    Returns:
     A self reference.
    
  • 用法:

    • Java

      driver.manage().timeouts().setScriptTimeout(1800, TimeUnit.SECONDS);
      
    • Python

      driver.set_script_timeout(30)
      
  

您可以在What does Selenium .set_script_timeout(n) do and how is it different from driver.set_page_load_timeout(n)?

中找到相关的讨论