【问题标题】:What are these extra methods in the Selenium Webdriver code?Selenium Webdriver 代码中的这些额外方法是什么?
【发布时间】:2013-05-21 18:59:32
【问题描述】:

所以我使用 Selenium IDE 记录了我网站的一些步骤,然后我使用 Java /JUnit 4 / WebDriver 将其导出。然后我在我的 Eclipse 中打开它,我在我的代码中发现了 4 个额外的方法。我不太了解这种方法的目的,因为我不处理警报窗口或查找元素。 以下是方法

 @After
public void tearDown() throws Exception {
driver.quit();
String verificationErrorString = verificationErrors.toString();
if (!"".equals(verificationErrorString)) {
  fail(verificationErrorString);
}
}

private boolean isElementPresent(By by) {
try {
  driver.findElement(by);
  return true;
} catch (NoSuchElementException e) {
  return false;
}
}

private boolean isAlertPresent() {
try {
  driver.switchTo().alert();
  return true;
} catch (NoAlertPresentException e) {
  return false;
}
}

private String closeAlertAndGetItsText() {
try {
  Alert alert = driver.switchTo().alert();
  String alertText = alert.getText();
  if (acceptNextAlert) {
    alert.accept();
  } else {
    alert.dismiss();
  }
  return alertText;
} finally {
  acceptNextAlert = true;
}

最后 3 种方法很容易理解它的作用,但是请有人告诉我 tearDown() 的作用。也可以,我可以删除这些功能并只保留所需的部分。

【问题讨论】:

    标签: java selenium selenium-webdriver


    【解决方案1】:

    tearDown() 方法用于在测试之前重新建立状态。这就是为什么它有 Junit 子句@after。该函数将在该类中的每次测试执行后调用。您还可以使用带有@Before 子句的setUp() 方法来准备每个测试。

    方法的第一行:driver.quit(); 关闭浏览器(又名 webdriver)。接下来检查是否有非空错误字符串,如果存在则测试失败。

    【讨论】:

      【解决方案2】:

      您可能希望保留setup()teardown() 方法。 setup() 方法用于在运行测试之前启动浏览器会话,teardown() 用于在测试完成后干净地退出它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-12-07
        • 1970-01-01
        • 1970-01-01
        • 2019-12-14
        • 1970-01-01
        • 2012-11-30
        • 2019-06-24
        相关资源
        最近更新 更多