如何在selenium webdriver中生成日志?

时间:2014-07-07 12:20:51

标签: logging selenium webdriver

我使用selenium webdriver来自动化我们的项目。有时会有很多不可读的例外。如果出现异常,我需要使用可理解的消息制作日志。我该怎么办?你能用例子向我解释一下吗?

2 个答案:

答案 0 :(得分:1)

我使用SLF4J记录器。我将它声明在我的类的顶部,并将我的所有方法包装在try catch中以便在出现错误时进行记录。这是一个例子:

package com.test

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


public void testMethod() {

    try {

        log.info("Clicking button.");

        driver.findElement(By.id(button_id)).click();

    } catch (NoSuchElementException e) {
        log.error("Unable to locate button.", e);
        Assert.fail();
    }
}

您还可以捕获多个这样的例外:

(ExceptionA | ExceptionB | ExceptionC | ExceptionETC  e)

答案 1 :(得分:0)

首先要了解有关Selenium异常的更多信息......它们是什么以及它们被抛出的时间和原因。开始这项研究的最佳地点是阅读Selenium类层次结构:http://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/package-tree.html(这假设您正在使用Java ......其他语言绑定也可能存在类似的层次结构。)

接下来,选择一个日志框架。您尚未指定编写代码的语言,因此您需要研究所选语言绑定Selenium中的日志记录机制,以及研究所选语言的常用日志记录框架。 Java Selenium确实在框架内部实现了Log4J,这可能很有用。如果您想更进一步并进行更多操作或自定义日志记录,您可以将自己的Log4J配置用于工作,或者将LogBack用于SLF4J。

一旦掌握了处理异常以及如何记录它们,就应该相应地更新代码库了。

网上有很多资源可以学习这些单独的作品,所以我不会在这里详细介绍,但希望这可以让你有一个良好的开端。这可能是一项非常大的工作,所以只需很小的步骤,你就可以到达那里。