log4j日誌
log4j日誌
Log4j是審計日誌框架,提供有關執行過程中發生了什麼樣的信息。它具有以下優點:
讓我們來了解應用程序運行。
日誌輸出可以保存,可以在以後進行分析。
有助於調試,以防自動化測試失敗
也可用於審計目的看應用的健康。
組件
1,Logger類的實例。
2,用於記錄該消息爲以下之一日誌級別的方法
error
warn
info
debug
log
示例
讓我們同樣用百分比計算器這個演示。
第1步:從https://logging.apache.org/log4j/1.2/download.htmll下載log4j的JAR文件,並將下載JAR文件的解壓縮格式。
第2步:通過瀏覽到文件菜單中創建'New Java Project'。
第3步:輸入項目的名稱爲「log4j_demo」,然後單擊「Next」
第4步:單擊添加外部JAR,並添加「Log4j-1.2.17.jar」
第5步:單擊添加外部JAR,並添加Selenium webdriver的類庫。
第6步:單擊添加外部JAR,並添加Selenium webdriver的JAR文件的位於libs文件夾中。
第7步:使用它我們可以指定Log4j的屬性添加一個新的XML文件。
第8步:輸入日誌文件的名稱爲「log4j.xml」。
第9步:下面的最終文件夾結構如下所示。
第10步:現在增加Log4j 這將被記錄執行過程中的性能。
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
第11步:現在用於演示的目的,我們將結合log4j在相同的測試,我們已經完成(百分比計算器)。添加一個類文件「Main」方法功能
package log4j_demo;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import org.apache.log4j.xml.DOMConfigurator;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
public class log4j_demo
{
static final Logger logger = LogManager.getLogger(log4j_demo.class.getName());
public static void main(String[] args)
{
DOMConfigurator.configure("log4j.xml");
logger.info("# # # # # # # # # # # # # # # # # # # # # # # # # # # ");
logger.info("TEST Has Started");
WebDriver driver = new FirefoxDriver();
//Puts a Implicit wait, Will wait for 10 seconds before throwing exception
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
//Launch website
driver.navigate().to("http://www.calculator.net/"); logger.info("Open Calc Application");
//Maximize the browser
driver.manage().window().maximize();
// Click on Math Calculators
driver.findElement(By.xpath(".//\*\[@id='menu'\]/div\[3\]/a")).click(); logger.info("Clicked Math Calculator Link");
// Click on Percent Calculators
driver.findElement(By.xpath(".//\*\[@id='menu'\]/div\[4\]/div\[3\]/a")).click(); logger.info("Clicked Percent Calculator Link");
// Enter value 10 in the first number of the percent Calculator
driver.findElement(By.id("cpar1")).sendKeys("10"); logger.info("Entered Value into First Text Box");
// Enter value 50 in the second number of the percent Calculator
driver.findElement(By.id("cpar2")).sendKeys("50"); logger.info("Entered Value into Second Text Box");
// Click Calculate Button
driver.findElement(By.xpath(".//\*\[@id='content'\]/table/tbody/tr/td\[2\]/input")).click(); logger.info("Click Calculate Button");
// Get the Result Text based on its xpath
String result = driver.findElement(By.xpath(".//\*\[@id='content'\]/p\[2\]/span/font/b")).getText(); logger.info("Get Text Value");
//Print a Log In message to the screen
logger.info(" The Result is " + result);
if(result.equals("5"))
{
logger.info("The Result is Pass");
}
else
{
logger.error("TEST FAILED. NEEDS INVESTIGATION");
}
logger.info("# # # # # # # # # # # # # # # # # # # # # # # # # # # ");
//Close the Browser.
driver.close();
}
}
執行
在執行日誌文件的根文件夾中創建如下圖所示。在Eclipse中不能找出文件。應該打開「Windows資源管理器」來顯示相同。
該文件的內容如下所示。