0

当等待条件超时时,我收到非常无用的消息:

Tests in error: 
    myTestName(mySuiteName): Timed out after 10 seconds waiting for              
    com.mycompany.qa.core.SeleniumWebTesting$$anon$1@6818c458

这是斯卡拉代码:

  def pageContains(locatorType: String, content: String) {
    locatorType match {
      case "TagName" =>
        val tag = new WebDriverWait(driver, defaultWait).until(
          new ExpectedCondition[Boolean] {
// it times out on this line below, but I can't send out any assert failure or useful message
            override def apply(driver: WebDriver) = driver.findElement(By.tagName(content)).isDisplayed
          }
        )
      case _ =>
        throw new UnsupportedOperationException("No valid locator strategy received (try a valid one, like class name)")
    }
  }
4

2 回答 2

3

您可以使用withMessage()方法。

WebDriverWait wait = new WebDriverWait(driver, timeout);
wait.withMessage("Your desired Message");
wait.until(new ExpectedConditions(boolean));
于 2012-11-08T05:05:10.143 回答
0

如果您使用的是 scala,我们在http://code.google.com/p/driveby/方面取得了巨大成功

于 2012-11-08T08:42:12.167 回答